【发布时间】:2012-09-28 00:28:32
【问题描述】:
为什么需要一个且只有一个实例?使用具有静态成员变量和静态方法的类也可以达到同样的目的。
据我所知,可能有两种可能的答案 -
当你的类需要有状态并且你只想要它的一个对象时。从设计的角度来看,具有静态方法和变量的类被认为是实用程序类,不应保持任何状态。
如果您的类需要参与多态性,并且您只需要继承树中的类的一个对象。
如果有人可以提供一个来自现实生活场景或任何 Java API 的示例(其中单例对象需要参与多态/继承),那将非常有帮助?
【问题讨论】:
-
与数据库的连接是单例最常见的例子之一。您需要一个连接。
标签: java design-patterns singleton