美文网首页
Java设计模式之单例设计模式

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

作者: 伪装的狼 | 来源:发表于2020-06-18 12:16 被阅读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();
    }
    

    }

    相关文章

      网友评论

          本文标题:Java设计模式之单例设计模式

          本文链接:https://www.haomeiwen.com/subject/eznyxktx.html