单例设计模式:
作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。
单例模式的结构
单例模式的特点:
单例类只能有一个实例。
单例类必须自己创建自己的唯一实例。
单例类必须给所有其他对象提供这一实例。
package 设计模式;
/*
* 单例单设计模式:
* 通常在工具类的设计中使用
* 1.懒汉式
* 2.饿汉式
*/
//测试类
public class SingleTest{
public static void main(String[] args) {
Single1 s1=Single1.getInstance();
s1.method();
Single2 s2=Single2.getInstance();
s2.method();
}
}
//单例设计模式之饿汉式实现方式
class Single1 {
private static Single1 single1=new Single1();
private Single1() {}//构造方法私有化
public static Single1 getInstance() {
return single1;
}
public void method() {
System.out.println("我是单列模式之饿汉式");
}
}
//单例设计模式之懒汉式实现方式
class Single2 {
private static Single2 single2=null;
private Single2() {}//构造方法私有化
public static Single2 getInstance() {
if(single2==null) {
single2=new Single2();
}
return single2;
}
public void method() {
System.out.println("我是单列模式之懒汉式");
}
}