更多课程 选择中心

PHP培训
美国上市教育机构

400-111-8989

PHP培训

php设计模式之Lazy Initialization(延迟初始化)

  • 发布:PHP培训
  • 来源:PHP教程
  • 时间:2016-12-08 14:43

Lazy Initialization(延迟初始化)

对于某个变量的延迟初始化也是常常被用到的,对于一个类而言往往并不知道它的哪个功能会被用到,而部分功能往往是仅仅被需要使用一次。

<?phpinterface Product {    public function getName();}class Factory {    protected $firstProduct;
    protected $secondProduct;

    public function getFirstProduct() {
        if (!$this->firstProduct) {
            $this->firstProduct = new FirstProduct();
        }
        return $this->firstProduct;
    }

    public function getSecondProduct() {
        if (!$this->secondProduct) {
            $this->secondProduct = new SecondProduct();
        }
        return $this->secondProduct;
    }}class FirstProduct implements Product {
    public function getName() {
        return 'The first product';
    }}class SecondProduct implements Product {
    public function getName() {
        return 'Second product';
    }}$factory = new Factory();print_r($factory->getFirstProduct()->getName());// 

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:php设计模式之Object pool(对象池)
下一篇:php设计模式之Prototype(原型模式)

php设计模式之Observer(观察者模式)

php设计模式之Strategy(策略模式)

php设计模式之Adapter(适配器模式)

php设计模式之Decorator(装饰器模式)

选择城市和中心
黑龙江省

吉林省

河北省

贵州省

云南省

广西省

海南省