单例设计模式:顾名思义就是某个对象永远只有一个,绝对不可以出现第二个。
单例模式种类:懒汉模式和饿汉模式。
懒汉模式:意思就是在你要使用我这个对象的时候,我判断该对象为null的时候我才创建,而不是像饿汉模式一开始就创建好。
package com.singletonpattern;
public class LazeSingleton {//懒汉式 单例模式需要判断并返回
private LazeSingleton() {};
//创建当前类的属性为空
public static LazeSingleton instance=null;
//通过方法来获取对象 判断对象是否是唯一的.返回对象
//多线程下 保证唯一性
public static synchronized LazeSingleton getinstance() {
if(instance==null) {
instance=new LazeSingleton();
}
return instance;
}
}
饿汉模式:意思就是启动就立刻创建好该对象,等要用的时候直接获取就使用。
package com.singletonpattern;
public class HungrySingleton {//饿汉式 调用方法就返回同一个对象
//把构造函数私有化
private HungrySingleton() {};
//创建一个静态的最终的实例对象
public static final HungrySingleton instance=new HungrySingleton();
//只要调用就返回相同对象
public static HungrySingleton getinstance() {
return instance;
}
}