单身人士课程

Fla*_*ash 8 c++ java singleton

Singleton类和具有所有静态成员的类(即方法和属性)之间是否存在任何差异.

我找不到任何'所有静态成员类'不能实现与正确实现Singleton模式的类相同的功能的实例?

例如.java.lang.Runtime是一个合适的Singleton类,而java.lang.System有所有静态访问方法,只有一个私有构造函数来避免外部构造.有没有人知道为什么类这样Runtime的类被制作出来Singleton并且没有实现像java.lang.System.

仅仅因为它是一个更清洁的设计(即更真实地模仿一个对象)还是在这里有一些性能优势?

Jon*_*eet 15

是的,有区别 - 单身人士可以实现一个界面.

此外,从外部看起来像单身的东西实际上可以通过不同的类来实现,其中单例访问方法(例如Runtime.getRuntime())可以在执行时创建正确的实例.我不是说这就是这里发生的事情,但这是一个选择.

  • @Default Skeet已经达到了rep奇点的地步.如果投票距离他的事件视野太近,他们就会陷入困境,永远不会被再次看到.我知道,我们都是关于它的蠢货.但是,请记住.由于声誉机械不确定性原则,他的代表最终将蒸发.它被称为Skeet Radiation. (8认同)
  • 哇,你不到一分钟就得到了3个赞成票.你有粉丝或其他什么? (3认同)
  • Jon Skeet俱乐部的潜行者,我是会员. (3认同)