Чтобы быть абстрактным, класс A должен иметь ключевое слово MustInherit
.
Abstract (MustInherit
) означает, что этот класс служит только базовым классом и не может быть создан с помощью New
.Это также позволяет вам объявлять абстрактные (MustInherit
) члены без реализации, то есть без тела метода.Затем наследуемые классы должны переопределять абстрактные члены и предоставлять реализацию, если только они сами не являются абстрактными (тогда третий уровень производных классов мог бы обеспечить реализацию).
Обратите внимание, что вам разрешено вызывать абстрактный член.Во время выполнения будет вызвана реализация фактического реализующего класса.
См .: MustInherit (Visual Basic)
Члены являются закрытыми, если не указано иное.Укажите для них Protected
, чтобы классы-потомки могли их видеть, или Public
, чтобы "все" могли их видеть.
См .: Уровни доступа в Visual Basic
Public MustInherit Class A
Protected StartDate As Date
Protected Men As Integer
Protected Place As String
Public Sub New()
StartDate = Today
Men = 0
Place = ""
End Sub
End Class
Public Class B
Inherits A
Public Grade As String
Public Sub New()
MyBase.New() 'This initializes StartDate, Men and Place
Grade = "Easy"
End Sub
Public Sub SetGrade(ByVal grade As String)
Me.Grade = grade
End Sub
End Class