有没有一种方法可以直接调用方法而无需创建特定类的实例,就像在C#中那样,所以除了这种方式之外:
Dim myclass as New ClassX
myclass.MyMethod()
Run Code Online (Sandbox Code Playgroud)
有没有办法使用类似的东西:
New ClassX.MyMethod
Run Code Online (Sandbox Code Playgroud)
我发现这种方式,似乎正在工作,但不确定其是否正确:
(New ClassX).MyMethod
Run Code Online (Sandbox Code Playgroud)
如果您的方法是实例级方法,则只能使用类的实例来访问它。通过使用
(New ClassX).MyMethod
Run Code Online (Sandbox Code Playgroud)
您隐式创建一个只能访问一次的新实例。
一种替代方法是更改方法的签名并将其标记为Shared方法:
Public Class ClassX
Public Shared Sub MyMethod()
' ...
End Sub
End Class
Run Code Online (Sandbox Code Playgroud)
Shared是CB static中调用的VB.NET创建方法的方法。这样,您可以通过仅指定类名而不创建实例来访问方法:
ClassX.MyMethod()
Run Code Online (Sandbox Code Playgroud)