Welcome to the website navigation,本站只接受合法正规的企业网站,欢迎站长们提交你的网站获得展示和流量有任何问题请联系站长,欢迎大家加入本站。

                
提交网站
  • 网站:76083
  • 待审:5
  • APP:577
  • 文章:304411
  • 会员:56004
文字内链包年1000元 文字内链包年1000元 文字内链包年1000元 AI办公网站 AI绘画工具 AIchat

名站导航为爱好php程序的朋友们提供php相关的教程知识。

PhP程序常用设计模式之单例模式5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

模式就像是OOP开发人员的配方,每种模式都提供了所需的成分。我们可以自定义模式的元素来解决特定的编程问题。单例模式就是PhP程序常用到的设计模式之一。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

在OOP中,一个对象之负责一个特定的任务通常是一种很好的做法。例如,你也许希望只让一个对象去访问数据库。单例模式被认为是职责模式,这是因为它将创建对象的控制委托到一个单一的访问点上。在任何时候,应用程序中都只会有这个类仅有的一个具体实例操作存在。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

多有的单例类至少拥有以下三种公共元素:5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

1、它们必须拥有一个构造函数,并且该构造函数必须使受保护的。即有关键字private关键字修饰。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

2、它们拥有一个保存类的具体实例操作的静态成员变量。强调是静态的成员变量。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

3、它们拥有一个访问这个具体实例操作的公共的静态方法。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

下面举一个单例模式的例子:5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

class Person{5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

private $name;5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

static $instance; //保存Person类的具体实例操作5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

private function __construct($name){ //必须有private修饰5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

    $this->name=$name;5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

}5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

private __clone(); //防止对象被复制或克隆5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

public static function getInstance(){5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

     if(!(self::$instance instanceof self)){5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

         self::$instance = new self(); //具体实例操作化Person对象5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

      }5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

      return self::$instance; //返回该对象5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

  }5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

public function run(){5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

   echo $this->name."正在跑步";5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

}5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

}5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

现在,你已经看到了如何申明一个单例类,但是该如何使用它呢?5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

请看如下的具体代码如下:5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

$person = Person::getInstance();5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

$person->run();5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

通过调用getInstance()方法,$instance现在存有内部存储具体实例操作的引用。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!


5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

名站网址导航

PhP程序编码规范之注释规范5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

注释在每种语言中都有,理解不同的注释类型之间的区别是很重要的。有些注释是方便程序员阅读程序的,但是有些注释的内容实际上是和程序一起存储的。5cnAIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

好了关于php程序的知识就说到这里希望可以帮助需要的朋友。,

标签:

分享到:

  admin

注册时间:

网站:0 个   APP:3 个  文章:0 篇

  • 76083

    网站

  • 577

    APP

  • 304411

    文章

  • 56004

    会员

赶快注册账号,推广您的网站吧!
文章分类
热门网站
最新入驻APP小程序

宝贝市场2023-02-08

宝贝市场——买手和卖家商品展示

夺宝助手2023-02-08

夺宝助手小程序,查看每日快夺宝平

查诚信2023-02-08

查诚信是一款免费的商业查询工具

车价天天报2023-02-08

快速连接汽车销售,获知汽车最新报

考勤助理小程序2023-02-08

上班签到考勤,实时定位,后台轻松

汽车报价大全查询2023-02-08

汽车报价大全查询提供最新汽车市