VB.NET中的类与模块在VB.NET中使用模块而不是具有共享成员函数的类是否被认为是可接受的做法?我倾向于避免使用模块,因为他们觉得像Visual Basic 6.0中剩下的遗留物并不再适合。另一方面,使用模块和仅具有共享成员的类似乎没有太大区别。我不是经常需要它,但有时候它们会提供一个简单的解决方案。我很想知道你是否有任何意见或偏好。
3 回答
慕森卡
TA贡献1806条经验 获得超8个赞
Module
s是C#static
类的VB对应物。如果您的类仅为辅助函数和扩展方法而设计,并且您不希望允许继承和实例化,则使用a Module
。
顺便说一句,使用Module
并不是真正主观的,并没有被弃用。事实上,你必须Module
在适当的时候使用。.NET Framework本身可以多次执行(System.Linq.Enumerable
例如)。要声明扩展方法,需要使用Module
s。
偶然的你
TA贡献1841条经验 获得超3个赞
我认为,除非将它们粘贴到单独的命名空间中,否则继续避免使用模块是一个好主意。因为在Intellisense中,模块中的方法将从该命名空间中的任何位置可见。
因此,不是ModuleName.MyMethod()
你最终MyMethod()
在任何地方弹出窗口,这种封装无效。(至少在编程层面)。
这就是为什么我总是尝试用共享方法创建Class,看起来好多了。
- 3 回答
- 0 关注
- 791 浏览
添加回答
举报
0/150
提交
取消