-
单例设计模式
一个类只能产生一个实例对象
饿汉式:直接生成本类对象
懒汉式:需要调用对象时菜生成对应的对象,但是会存在多线程并发安全的问题
去了解其他单例模式的实现方式
package cn.zyj.reflect;
public class SingleDemo {
public static void main(String[] args) {
TaskManager as = TaskManager.getT();
}
}
//任务管理器---只能创建一个对象
//饿汉式实现方式
/*
class TaskManager{
//构造方法私有化
private TaskManager(){}
//创建对象
private static final TaskManager t = new TaskManager();
//给外界获取方法
public static TaskManager getT() {
return t;//把唯一的一个对象返回
}
//调用这个静态方法对象就会创建
public static void m(){}
}
*/
//任务管理器---只能创建一个对象
//懒汉式实现方式
class TaskManager{
//构造方法私有化
private TaskManager(){}
//创建对象
private static TaskManager t=null;
//给外界获取方法
public static synchronized TaskManager getT() {
//判断对象是否为null
if (t==null){//表明没有创建过对象
t=new TaskManager();
}
return t;
}
//调用这个静态方法对象就会创建
public static void m(){}
}
//枚举实现方式(防止反射从底层破坏)
//enum TaskManager{
// t
//}