静态(在VB.NET中共享)或普通方法

时间:2009-10-27 10:50:44

标签: c# .net asp.net vb.net

我想知道在使用静态方法或普通实例编码时首选哪一个,我更喜欢使用静态,如果它们很少但是如果有很多我开始有些怀疑

实施例

EmployeeCollection EmpLst = EmployeeManager.GetAllEmployees();

或者

EmployeeManager EmpMgr = new EmployeeManager();
EmployeeCollection EmpLst = EmpMgr.GetAllEmployees();

如果EmployeeManager有很多方法(选择删除更新),可以将它们全部设为静态。

如果是普通实例。如果大量使用GetAllEmployees(),每次特别启动对象都不会有缺点。

更好的使用方法是什么?

3 个答案:

答案 0 :(得分:3)

如果你有很多静态方法,那么我假设你没有遵循OOP原则。 静态方法作为工厂方法或辅助方法很有用。但是我会避免在它们之上构建应用程序设计。

答案 1 :(得分:1)

你可能想看一下工厂和单身人士模式,这是为这类东西设计的创作模式。对于你的问题,我建议使用一个单例,它强制一次性创建对象。

Abstract Factory

Singleton

(链接到dofactory.com)

答案 2 :(得分:0)

对于GetEmployee方法,我坚持使用静态。

如果Method需要访问任何实例状态和实例方法,我通常会使用static。因此,如果方法不需要实例状态,我不使用实例方法。