java 单例模式设计应用举例

一:单例模式简介

单例模式,又名单态模式, Singleton。
限定某一个类在整个程序运行过程中,只能保留
一个实例对象在内存空间。
单例模式是GoF的23种设计模式(Design Pattern)中
经典的一种,属于创建型模式类型。
 
单例模式:保证一个类有且只有一个对象
采用static 来共享对象实例
采用private 构造函数,防止外界new操作
 
单例模式保证一个类在内存空间中只有一个对象
 
 

二:单例模式设计举例->Singleton例子

public class Singleton {

    private  static Singleton obj=new Singleton("abc");//确保一个类只有一个对象
    private String content;
    private Singleton(String content){
        this.content=content;
    }
    public String getContent(){
        return content;
    }
    public void setContent(String content){
        this.content=content;
    }
    public static Singleton getInstance(){//静态方法调用静态对象
        return obj;
    }

    public static void main(String[] args) {

        Singleton obj1=Singleton.getInstance();

        System.out.println(obj1.getContent());

        Singleton obj2=Singleton.getInstance();//类直接调用静态方法

        obj2.setContent("def");//obj1的content也为"def"

        System.out.println(obj1.getContent());//def

        System.out.println(obj1==obj2);//true


    }

}

输出结果:

注:本文参考学习了华东师范大学 陈良育教授 的mooc课程之java核心技术基础篇。

转载请注明出处。

 

发布了6 篇原创文章 · 获赞 4 · 访问量 35

猜你喜欢

转载自blog.csdn.net/qq_44787993/article/details/105714957