这是最近在接受采访时向我提出的问题。 据我所知,通过单例模式,我们可以实例化单例对象。但是,我想知道我是否正确。
答案 0 :(得分:2)
SingleObject类提供了一个静态方法来获取其静态实例 到外面的世界。 SingletonPatternDemo,我们的演示类将使用 SingleObject类获取SingleObject对象。 source
代码如下所示:
public class SingleObject {
//create an object of SingleObject
private static SingleObject instance = new SingleObject();
//make the constructor private so that this class cannot be
//instantiated
private SingleObject() {
}
//Get the only object available
public static SingleObject getInstance() {
return instance;
}
public void showMessage() {
System.out.println("Hello World!");
}
}
调用SingleObject类:
public class SingletonPatternDemo {
public static void main(String[] args) {
//illegal construct
//Compile Time Error: The constructor SingleObject() is not visible
//SingleObject object = new SingleObject();
//Get the only object available
SingleObject object = SingleObject.getInstance();
//show the message
object.showMessage();
}
}
因此,Singleton设计模式描述了如何使用Singleton对象。 WikiLink
请记住,单身人士实际上是伪装的全球变数。 因此,单身人士被视为弃用。
答案 1 :(得分:1)
Singleton Pattern是路线的地图。 Singleton Object实际上正在经过这条路线。
你可以开车,走路,然后穿过那条路。如果您开车,您可以使用汽车,卡车(或)任何其他方式。
相同的方式单一模式是一种做某事的方法(或)。您可以使用任何语言,计算机(或)平台来实际实现该Singleton对象。
答案 2 :(得分:0)
Singleton_design_pattern是一种设计模式,它将类的实例化限制为一个对象。当需要一个对象来协调整个系统的操作时,这非常有用。
Singleton对象是一个单独的对象,它是通过实现Singleton方法创建的。
要实现这一目标( TRUE Singleton ),
final
。其他人不能对它进行子类化并再创建一个实例private static final
private
构造函数和公共getInstance()
方法。 ClassLoader
readResolve()
方法并返回相同的实例。有关Singleton
的有效实施,请参阅此SE问题。
What is an efficient way to implement a singleton pattern in Java?