Java设计模式之单例设计模式

2020-06-18  本文已影响0人  伪装的狼

单例设计模式是指,在整个系统中的一个类只允许提供一个实例化的对象,需要对构造方法使用private进行访问权限限制,禁止通过new来实例化新对象,通常会在类内部提供一个全局实例化对象供用户使用。而单例设计模式又分为饿汉单例设计和懒汉单例设计。饿汉单例设计:在定义类属性时就已经对对象进行实例化处理。懒汉单例设计:在第一次使用类是才进行对象的实例化,这样的好处是可以节省程序启动时的资源。

饿汉单例设计:
class SingletonMode {

//在内部类进行实例化
private static final SingletonMode SINGLETON = new SingletonMode();

//构造方法私有化,外部无法通过new来实例化对象
private SingletonMode(){

}

public static SingletonMode getInstance(){
    return SINGLETON;
}

public void print(){
    System.out.println("饿汉单例设计模式!");
}

}

懒汉单例设计:
class SingletonMode {

//在内部类进行实例化
private static SingletonMode SINGLETON;

//构造方法私有化,外部无法通过new来实例化对象
private SingletonMode(){

}

public static SingletonMode getInstance(){
    if (SINGLETON==null){       //如果对象在使用时没有实例化,那么就进行实例化
        SINGLETON = new SingletonMode();
    }
    return SINGLETON;
}

public void print(){
    System.out.println("懒汉单例设计模式!");
}

}

主函数调用:
public class Singleton{
public static void main(String[] args) {

    SingletonMode singletonMode = SingletonMode.getInstance();
    singletonMode.print();
}

}

上一篇 下一篇

猜你喜欢

热点阅读