mode

单例模式

  1. 某个类只能有一个实例

通常是重量级的对象

饿汉式

  1. 构造类私有化,防止直接new
  2. 类的内部创建对象
  3. 向外暴露一个静态的公共方法

可能还没有用到这个对象,但已经创建成功
可能造成资源浪费

public class single{
    private single(int i){this.num=i;}
    private int num;
    private static single sg=new single(1);//在类的内部创建一个对象,与类加载同步
    public static single getInstance(){return sg;}
}

懒汉式

  1. 构造器私有化
  2. 定义一个static静态属性对象
  3. 提供一个公有静态方法,返回私有对象

存在线程安全问题

public class single{
    private single(int i){this.num=i;}
    private int num;
    private static single sg;
    public static single getInstance(){
        if(sg==null)
        sg=new sg("single");
        return sg;}
}
posted @ 2023-03-11 22:36  5hithin  阅读(23)  评论(0)    收藏  举报