我想列出Java中提供的内置单例类的列表以及使它们成为单例的原因。
对于E.G。
java.lang.Runtime
原因:因为在整个Java应用程序中只能有一个运行时环境。
java.awt.Toolkit
原因:AWT只需要一个对象来执行绑定,而创建对象的对象相对昂贵
我们可以列出Java中的所有单例类吗?
答案 0 :(得分:1)
Java Docs让我想到了。例如。对于Runtime
:
每个Java应用程序都有一个类
Runtime
的单个实例,它允许应用程序与运行应用程序的环境进行交互。可以从getRuntime
方法获取当前运行时。应用程序无法创建自己的此类实例。
我们可以列出Java中的所有单例类吗?
可能通过解析Java Docs的HTML并寻找单个'或者' singleton'。虽然我无法想象会非常强大。 AFAIU没有简单的标记。
答案 1 :(得分:0)
Java中分配了Singleton类。以下是Java中一些预定义的Singleton类
1. java.lang.Runtime
2. java.awt.Toolkit
3. java.sql.DriverManager, even implementation of java.sql.Connection interface is Singleton.
还有更多。
侧面注释⇒请在线阅读Java文档,并寻找没有公共构造函数和返回其类实例的无参数方法的公共类。通常那会是一个。