当前位置: 代码迷 >> C# >> 用类名在此类内定义一个静态变量 有什么用
  详细解决方案

用类名在此类内定义一个静态变量 有什么用

热度:380   发布时间:2016-04-28 08:36:32.0
用类名在该类内定义一个静态变量 有什么用?

1,用类名在该类内定义一个静态变量,然后类的函数都用该静态变量来调用,为什么要这样做?
2,该解决方案有两个项目,两个项目内分别有想同一个类,在运行时,这两个类是独立的吗?

------解决思路----------------------
在早期的 java 中,并没有 public static class XXX{ .... } 这样的语法。为了约束某个类只能最多有一个实例,出于过度强迫症的考虑,那么将 XXX 的实例化方法设置为 private 的,将其设置为 Singletone 格式。

实际上如果不是过度强迫症,那么你的代码中在任意模块中写一个
public static CRunningLog log = new CRunningLog();
就行了,根本用不着什么单例模式。但是有的人就是宁可把代码写复杂了,也一定要满足洁癖的。
------解决思路----------------------
感觉不用纠结这个问题。
我觉得是他没处理好。可以额外定义一个库的工程,给双方调用。非要考虑到唯一性,那就用单例模式。
------解决思路----------------------
引用:
2,该解决方案有两个项目,两个项目内分别有想同一个类,在运行时,这两个类是独立的吗?


如果命名空间相同,那么根本无法编译通过。

如果命名空间不同,那么就完全是两个无关的类了。在两个无关的类中,你抄了同一个代码,这就是不太好的做法。应该在一个“公共”的工程中把这些公共的类单独实现,然后你的两个工程分别引用这个公共的工程,引用这个公共的类。

不要抄两遍。相同的东西,只应该写一遍。
  相关解决方案