经常需要用的设计模式

有任何问题可以私信我,我们可以成为好朋友。。。

单例
一个类只允许拥有一个对象,并将这个对象作为一个全局的访问点,提供出去让外界使用。它是以类的形式来存在的

//饿汉式单例
Class SingleInstance{
//内部创建一个全局的私有的
private static SingleInstance singleInstance=new SingleInstance();
private SingleInstance(){} //不让外界通过构造方法来进行创建对象
public static SingleInstance getInstance(
//一行代码,也不会设计线程的安全问题
return instance;
)
}

//懒汉式单例
class SingleInstance{
private static SingleInstance1 instance =null;
private SingleInstance(){}
public static SingleInstance getInstance(){
if(instance == null){
instance=new SingleInstance();
return instance;
}
}

//饿汉式存在着线程安全的问题。下面是双重校验锁
class SingleInstance{
private static SingleInstance instance=null;
private SingleInstance(){};
//双重校验锁
public static SingleInstance getInstance(){
if(instance==null){
synchronized(SinggeInstance.class){
if(instance ==null){
instance=new SingleInstance();}
}}}}


猜你喜欢

转载自blog.csdn.net/lovexiangchang/article/details/81607842