Visual Basic.NET+SQL Server全程指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

实例3-5 创建和引用共享成员

该实例实现步骤如下。

1 创建模块

在本章的项目chapter3下,右键单击该项目名下面的文件夹“类及对象”,在弹出菜单中选择“添加”→“模块”菜单命令,在弹出的对话框中输入模块名称ShareModule,单击“添加”按钮完成模块的创建。

2 添加代码

双击ShareModule.vb进入该模块的代码编辑窗口,向其中添加代码3-10中的代码。

代码3-10 ShareModule.vb

        01. Module ShareModule
        02.     Public Class Item '定义类Item
        03.         Public Shared Count As Integer = 1 '定义一个共享字段Count
        04.         Public Shared Sub ShareMethod() '声明一个共享方法
        05.             Console.WriteLine("Current value of Count: " & Count)
        06.         End Sub
        07.         Public Sub New(ByVal Name As String) '声明该类的构造函数
        08.             Me.SerialNumber = Count
        09.             Me.Name = Name
        10.             Count += 1
        11.         End Sub
        12.         Public SerialNumber As Integer
        13.         Public Name As String
        14.         Public Sub InstanceMethod() '显示输出Count的值和构造函数的参数值
        15.             Console.WriteLine("Information in the first object: " & _
        16.                      Me.SerialNumber & Chr(9) & Me.Name)
        17.         End Sub
        18.     End Class
        19.     Sub main()
        20.         ' 创建Item类的两个实例
        21.         Dim part1 As New Item("keyboard")
        22.         Dim part2 As New Item("monitor")
        23.         part1.InstanceMethod()
        24.         part2.InstanceMethod()
        25.         Item.ShareMethod()
        26.     End Sub
        27. End Module

代码3-10执行的步骤如下:

① 第2行到第18行代码定义了类Item;

② 第3行代码定义一个共享字段Count,用于记录Item类实例被创建次数;

③ 第4行到第6行代码声明一个共享方法,显示当前Count的值;

④ 第7 行到第11 行代码声明该类的构造函数,获得Count的值和参数值,并将Count的值加1;

⑤ 第14行到第17行代码声明一个方法InstanceMethod(),用于显示输出Count的值和构造函数的参数值;

⑥ 第21行和第22行代码创建Item类的两个实例;

⑦ 第23行和第24行代码分别用上面定义的两个实例来调用类的InstanceMethod()方法;

⑧ 第25行代码直接调用类的共享方法ShareMethod()。

3 运行结果

按F5键,运行程序,结果如图3-6所示。

图3-6 实例3-5运行结果

3.3.5 类的封装、继承和多态性

1.封装

通过封装,能够隐藏类中的属性和方法实际的实现过程。其最终的目标是能够给用户接口提供一系列必须执行的语句,而隐藏了幕后的细节。这样修改代码不会影响,或者不修改前端的应用程序。

下面以实例说明类的封装性。