单例模式,原型模式,享元模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单例模式,原型模式,享元模式相关的知识,希望对你有一定的参考价值。
这三个模式为什么放一起呢。都是减少构造函数多次被构造为目的产生的模式。也就是说(A a=new A(); A b=new A();)这样就两次构造了这个对象
单例模式
在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例。即一个类只有一个对象实例
有一个厨师
Class Cook()
{
Private Cook()
{
//面试,工资呀,上班时间呀,反正请个厨师不容易
}
Private static Cook _厨师=null;
Static Cook()
{
_厨师=new Cook();
}
Public Static Cook 请厨师()
{
Return _厨师;
}
}
上面这个厨师,( Cook 厨师A=new Cook(); Cook 厨师B=new Cook(); )你永远只有一个厨师,不管你请几次,构造都一个
多线程调用就有双if加锁的写法
Public Static Cook 请厨师()
{
if(_厨师==null)
{
lock(_object)
{
if(_厨师==null)
{
_厨师=new Cook();
}
}
}
Return _厨师;
}
原型模式
人工智能时代,开始时设置了一个厨师,后来的就不断的复制
享元模式
以上是关于单例模式,原型模式,享元模式的主要内容,如果未能解决你的问题,请参考以下文章