黑马程序员技术交流社区
标题: 【黑马程序员济南】PHP类的单例模式 [打印本页]
作者: 小鲁哥哥 时间: 2017-10-19 11:15
标题: 【黑马程序员济南】PHP类的单例模式
本帖最后由 小鲁哥哥 于 2017-10-19 11:17 编辑
目标:
设计一个类,该类只允许实例化一个对象出来!
解决方法:
//分4步:
class S{
//第1步:私有化构造方法:以防止new该类
private function __construct(){}
//第2步:定义一个私有的静态属性,目的是用以存储该单例对象:
private static $obj;
//第3步:定义一个公开的静态方法,从中判断并实例化一个对象并返回该对象(单例对象)
static function G(){
if( !isset (static::$obj )){
static::$obj = new static();
}
return static::$obj;
}
//第4步:私有化克隆方法,以防止克隆
private funciton __clone(){}
}
这样的话,我们在实例化对象的时候静态的变量会存储这个对象,如果我实例化两次的时候,只会返回一个对象,避免了资源的浪费~
不知道大家对今天讲的类的单例模式学习的怎么样啊?有什么疑问欢迎来黑马程序员济南中心来咨询哟~
点进这个帖子的同学肯定是要奋发图强,学技术拿高薪的有志青年,这里我看你骨骼惊奇,是个绝世的练武奇才,你我有缘,今天我就把这个武林秘籍如来神掌传授于你! 什么?不想学如来神掌?不要紧!这里有各个门派的武林绝学,链接拿好!!哈哈哈哈
作者: cz_liu 时间: 2017-11-16 20:19
学会了 ,谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |