单例模式
Posted speak out now.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单例模式相关的知识,希望对你有一定的参考价值。
单例类只能有一个实例,并且单例类必须自己创建自己的唯一实例,单例类必须给所有其他对象提供这一实例。
除了供其他对象获取本单例类对象的方法是public的,其他属性或方法全为private。
懒汉式:在提供给外界调用以获得唯一实例的方法中写new
private static MySingleton mySingleton = null;
public static MySingleton getInstance(){
if(mySingleton == null){
mySingleton = new MySingleton();
}
return mySingleton;
}
饿汉式:直接给静态变量赋值时new,类加载时便创建唯一的实例
private static MySingleton2 mySingleton = new MySingleton2();
public static MySingleton2 getInstance(){
return mySingleton;
}
登记式:
登记式单例模式是在原来的基础上进行数量上的扩展,对多个单例进行管理,把每次创建的单例登记到map中。
调用时先判断该单例是否已经创建,是的话返回该单例,否则创建并登记到map中再返回。
以上是关于单例模式的主要内容,如果未能解决你的问题,请参考以下文章