클래스 상속(subclassing) 예제 for .NET with Visual Basic
다음은 세 개의 Public 클래스로 구성되어 있다. 각 클래스는 별도의 파일로 저장되어야 한다.
이 예제는 C#용으로 제공된 클래스 상속 예제와의 비교를 위해 제공된다.
(Java와는 달리) 하나의 Visual Basic 소스파일에 public 클래스가 여러 개 존재해도 된다. 소스파일명도 Public 클래스명과 달라도 된다. (비스크립트형) Visual Basic 언어는 소스 코드에서 C, C++, C#, Java 언어 처럼 대소문자 구별을 엄격히 한다.
Parent는 부모 클래스이고 Child는 Parent에서 상속 받은 자식 클래스이다.
컴파일하는 명령은
vbc TestSubclassing.bas Parent.bas Child.bas
이다.
Imports System
Namespace MyTestApplication1
Public Class Parent
Private name As String
Public Sub New()
End Sub
Public Sub New(ByVal name AS String)
Me.name = name
End Sub
Public Sub SayName()
Console.WriteLine("I am a parent, {0}", name)
End Sub
End Class
End Namespace
Imports System
Namespace MyTestApplication1
Public Class Child
Inherits Parent
Private name As String
Public Sub New(ByVal name As String)
' MyBase.New(name) ' 클래스 상속시 부모 클래스 생성자 호출
Me.name = name
End Sub
Public Overloads Sub SayName()
Console.WriteLine("I am a child, {0}", name)
End Sub
End Class
End Namespace
'
' See: http://www.gosu.net/GosuWeb/ArticleMSView.aspx?ArticleCode=1021
Imports System
Namespace MyTestApplication1
Public Class TestSubclassing
Public Shared Sub Main(args() As String)
Dim obj As Child = New Child("Dooly")
obj.SayName()
End Sub
End Class
End Namespace
실행> TestSubclassing
I am a child, named as Dooly