我正在使用VB.net 2015来创建.dll。我的问题是如何创建.dll以便只有一个类对外开放。现在我有几个用于列表的类,但显示为选择选项。
答案 0 :(得分:2)
查看解释VB.Net中访问级别的this link。您希望对外开放的类应使用Public
修饰符声明:
Public Class MyExposedClass
Public Sub MyExposedMethod()
MyNonExposedMethod()
End Sub
Private Sub MyNonExposedMethod()
Dim objMyFriendlyClass As New MyFriendlyClass
objMyFriendlyClass.MyFriendlyMethod()
End Sub
End Class
然后,如果您希望MyExposedClass
能够在同一个程序集中调用其他类,则可以使用Friend
修饰符。如果您不希望将类暴露给除父级之外的任何类,则应使用Private
修饰符。
Friend Class MyFriendlyClass
Friend Sub MyFriendlyMethod()
Dim objPrivateClass As New MyPrivateClass
MyNonExposedMethod(objPrivateClass)
End Sub
Private Sub MyNonExposedMethod(ByVal objPrivateClass As MyPrivateClass)
End Sub
'Can be called by MyFriendlyClass
Private Class MyPrivateClass
End Class
End Class