VB.NET有类和模块,因此我的第一个问题是它们之间的区别是什么?另外,我注意到C#没有模块,只有类,有没有替代模块或是它们被移除了?
关于最接近VB模块的东西,在C#中就是静态类。
例如:
在VB.NET中
Module SomeModule
Public Sub DoSomething
MsgBox("Doing something!")
End Sub
End Module
同样的内容,使用C#语言实现:
public static class DoSomethingFuncs
{
public static void DoSomething() {
MessageBox.Show("Doing something!");
}
}
DoSomething
,但在 C# 中必须使用类名限定符 DoSomethingFuncs.DoSomething
。 - MarkJ[StandardModule] internal sealed class Module1
,而将C#中的静态类(名为Module1)反编译的结果是:internal abstract sealed class Module1
。因此,区别在于类参数(可能用于反射),并且C#中的静态类也被标记为抽象的。 - Aidiakapi