构造器
构造器是一种特殊的方法,在类初始化时必须使用构造器。在vb.NET中称为new方法,但是正如你看到的,在前面的代码中没有一个new方法,是的,在没有出现构造器时,vb.NET将为你创建一个。当你使用new关键字初始化一个对象时,类构造器被调用。当初始化对象时,你能够提供初始化代码以保证对象运行。
如果使用了关键字new,调用了类构造器,vb.NET将不再为你创造一个。
继承
继承是一个这样的特征即允许你扩展类,如果你需要一些功能,你可以创造一个新类,如果你需要的功能中的部分功能已经能由一个已经存在的类提供了,你可以扩展原来的那个类来构建一个新类。那么你新建的这个类成为子类或者继承类,原来的那个类称为父类或者基类。扩充类的过程称为扩展,有时术语subclass或inherit 用于描述扩展类的行为。在vb.NET中一个类只能有一个父类,多个父类的情况是不允许的。
在语法构成上,声明一个扩展类在类名后面使用分号,分号后面使用Inherits和父类名,例如,扩展类Employee创建一个新类Manager,代码如下
| Listing 9: Extending a class Imports System Class Employee Dim salary As Decimal = 40000 Dim yearlyBonus As Decimal = 4000 Public Sub PrintSalary() ’ print the salary to the Console Console.Write(salary) End Sub End Class Class Manager: Inherits Employee End Class |
如果单词Inherits 显示在下一行,那么就不需要分号,如:
| Class Manager Inherits Employee End Class |
现在你可以初始化一个Manager对象,使用Manager对象中的成员,如下面的代码
| Listing 10: 初始化Manager对象 Class Employee Public salary As Decimal = 40000 Public yearlyBonus As Decimal = 4000 Public Sub PrintSalary() ’ print the salary to the Console Console.Write(salary) End Sub End Class Class Manager: Inherits Employee End Class Module Module1 Public Sub Main() Dim manager As Manager manager = New Manager() manager.PrintSalary() End Sub End Module |
上一页 [1] [2] [3] [4] [5] [6] 下一页