9. 在Class A 上输入以下代码:
Imports System
Imports System.Console
10. 增加以下代码完成Class A:
Class A
Public Sub F()
Console.WriteLine("A.F")
End Sub
Public Overridable Sub G()
Console.WriteLine("A.G")
End Sub
End Class
11. 在 Class A下增加以下代码:
Class B
Inherits A
Public Shadows Sub F()
Console.WriteLine("B.F")
End Sub
Public Overrides Sub G()
Console.WriteLine("B.G")
End Sub
End Class
在以下的代码段,你声明了两个对象,并且调用他们的方法看结果。
Class Test
Shared Sub Main()
Dim b As New B()
Dim a As A = b
a.F()
b.F()
a.G()
b.G()
End Sub
End Class
12. 按 F5 运行应用程序。Output 窗口弹出显示结果,如图二所示:

图二:继承实例1的输出结果
注意 b.F() 和b.G()的结果都是意料中的。注意,a.G()调用的是B.G,而不是A.G。这是因为我们允许Class A的方法G可以被Override。实际执行的方法取决于class B的G方法,因为它Override了从class A中继承的方法。这种改变编译时方法的执行的能力使得继承成为面向对象变成中的重要特色。