我有2个班级,一个父母和一个孩子。
Class Test
Private Test_Text
Private Sub Class_Initialize()
Test_Text = "Hello"
End Sub
Private Sub Class_Terminate()
End Sub
Public Property Get Text
Text = Test_Text
End Property
Public Property Let Text(ByVal strIn)
Test_Text = strIn
End Property
End Class
Class SubTest
Public SubTest_Test
Private SubTest_Interger
Private Sub Class_Initialize()
Set SubTest_Test = New Test
End Sub
Private Sub Class_Terminate()
Set SubTest_Test = Nothing
End Sub
Public Property Get int
int = SubTest_Integer
End Property
Public Property Let int(ByVal intIn)
SubTest_Integer = intIn
End Property
End Class
因为我已经公开了 SubTest_Test 我可以像这样通过子类访问它
Set MyTest = New SubTest
MsgBox MyTest.SubTest_Test.Text
这是可以接受的还是我应该将 SubTest_Test 设为私有并在子类中写入属性以访问父属性?
编辑:我想问题应该是,直接访问父级是否存在任何安全/可用性问题。
从可用性的角度来看,我越想越多,最好对使用子类的任何人隐藏父级。这样,当您从子类创建对象时,您不必了解父类的任何信息。