1. OverLoads:原现有成员相同的名称来声明属性或方法,但参数列表与原始成员不同(C#方法重载)。
2. Overrides:在派生类中重写基类成员(VB.NET中在基类中声明为Overridable的方法才可以在派生类中用Overrides关键字重写)(C#Override,C#中只有Abstact、Virtual方法才可以在派生类中重写)。
3. Shadows:隐藏基类中的同名元素(C#new)。
Module Module1
Sub Main()
cls.a()
cls.a(2)
Dim clsApp As TheShadow = New TheShadow()
clsApp.b() 'TheShadow类中隐藏基类中的b方法
Dim clsSamp As New TheInherited
clsSamp.b() 'TheInherited类中重写的b方法
Console.ReadLine()
End Sub
Class cls
Public Overloads Shared Sub a()
Console.WriteLine("无参数方法a")
End Sub
Public Overloads Shared Sub a(ByVal i As Integer)
Console.WriteLine("重载无参数方法a,输入参数{0}",i)
End Sub
End Class
Class TheBase
Public Overridable Sub b()
Console.WriteLine("基类可重写方法b")
End Sub
End Class
Class TheInherited
Inherits TheBase
Public Overrides Sub b()
MyBase.b() '使用MyBase关键字访问基类方法
Console.WriteLine("派生类重写基类方法b")
End Sub
End Class
Class TheShadow
Inherits TheInherited
Public Shadows Sub b()
Console.WriteLine("在派生类中使用Shadows关键字覆盖基类同名方法b")
End Sub
End Class
End Module
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。