单例模式
说到单例模式,我就想起一次做笔试的时候,碰到过的一个问题;问的是:什么是懒汉单例模式?请写一下它的程序并简明它的一些特点。当时真是一脸懵逼,因为在那之前还没有接触过这些设计模式。
那么接下来就介绍下java的设计模式之一:单例模式
首先来讲讲它的特点:
单例模式是一种创建模式,它只涉及一种单独的类,负责创建自己的对象。但是这个类确保只创建了单个对象,该类还提供了一种访问其唯一对象的方法。当你在其它类中想创建该类对象时,不得不调用它的一个静态方法。
下面是一个实例,可以参考一下;
*在SingletonTest类中创建了静态对象。
package SingleTon;
/**
* 单例模式
* @author 哎呦不错呦
*
*/
public class SingletonTest {
private static SingletonTest instance = new SingletonTest();
//SingletonTest类的构造函数是私有的,并且有一个自身的静态实例。
private SingletonTest(){
System.out.println("创建了一个SingletonTest类的对象");
}
public void showMessage(){
System.out.println("恭喜SingletonTest对象创建成功");
}
public static SingletonTest getInstance(){
//SingletonTest类提供了一个静态方法来获取它的静态实例到外部世界。
return instance;
}
}
*在Test类中调用 SingletonTest.getInstance()方法获取SingletonTest对象;
package SingleTon;
public class Test {
public static void main(String []args){
//在其他类中获取SingletonTest对象
SingletonTest instance=SingletonTest.getInstance();
//调用SingletonTest类的方法,查看成功获取了SingletonTest对象
instance.showMessage();
}
}
单例模式就介绍完了,如有不正确的地方,请指正。