单例类至少拥有以下三种公共元素:

必须拥有一个构造函数,并且必须被标记为private。

拥有一个保存类的实例的静态成员变量。

拥有一个访问这个实例的公共的静态方法

具体使用方面,我在下面php实例中注释的很清楚:

/**

* by www.phpddt.com

*/

class Mysql{

//该属性用来保存实例

private static $conn;

//构造函数为private,防止创建对象

private function __construct(){

$this->conn = mysql_connect('localhost','root','');

}

//创建一个用来实例化对象的方法

public static function getInstance(){

if(!(self::$conn instanceof self)){

self::$conn = new self;

}

return self::$conn;

}

//防止对象被复制

public function __clone(){

trigger_error('Clone is not allowed !');

}

}

//只能这样取得实例,不能new 和 clone

$mysql = Mysql::getInstance();

?>

php面向对象初始化一次,php单例模式实现(对象只被创建一次)相关推荐

  1. php单例模式实现对象只被创建一次 mysql单例操作类

    这是我在php面试题中遇到的一道试题,单例模式按字面来看就是某一个类只有一个实例,这样做的好处还是很大的,比如说数据库的连接,我们只需要实例化一次,不需要每次都去new了,这样极大的降低了资源的耗费. ...

  2. 单例模式(全局地提供了一个类的唯一对象,该类的对象只创建一次,避免了创建类对象的开销)

    单例模式全局地提供了一个类的唯一对象,而且类的对象只需要创建一次,避免了创建类的对象开销 代码 single.h #ifndef HEADFILE #define HEADFILE#include & ...

  3. JAVA类思维_面向对象思维 Java中的类和对象及其应用

    一.面向过程与面向对象 面向过程: 从事务执行者的角度思考问题,我该干什么  重点在过程----事务流程 面向对象: 从事务的指挥者角度思考问题,我应该找谁干什么  重点在对象 面向对象的优点: 1. ...

  4. JavaSE——面向对象基础(思想、类与对象、构造方法、重载、匿名对象)

    第1节 面向对象基础 一.面向对象思想 1.1 概述 面向对象(Object Oriented)是软件开发方法.面向对象的概念和应用已超越了程序设计和软件开发,是一种对现实世界理解和抽象的方法,是计算 ...

  5. C++面向对象(三):类和对象

    C++面向对象:类和对象 会有点长,不过读过就全学会喽!!!!!! 会有点长,不过读过就全学会喽!!!!!! 会有点长,不过读过就全学会喽!!!!!! 1.类与对象的基本概念 1.1 结构与类 1 . ...

  6. 高阶Day1:面向对象,面向过程,类和对象的属性和方法创建

    高阶Day1:面向对象,面向过程,类和对象的属性和方法创建 高级编程学习4个内容: 面向对象 MySQL数据库 网络编程 并发编程 面向过程(POP)与面向对象(OOP): 类和对象: 类名的定义: ...

  7. PHP面向对象编程详解:类和对象

    PHP面向对象编程详解:类和对象 从OOP的视角看,不应区分语言.无论是C++.无论是Java.无论是.net还有更多面向对象的语言,只要你了解了OO的真谛,便可以跨越语言,让你的思想轻松的跳跃.便没 ...

  8. Delphi面向对象学习随笔一:类与对象的关系

    Delphi面向对象学习随笔一:类与对象的关系 作者:巴哈姆特 http://www.cnpack.org (转载请注明出处并保持完整) 工作几年了,总想做点总结,于是有了这篇东西,叫随笔吧呵     ...

  9. 面向对象:编程范式、类、对象

    编程范式: 1. 面向过程编程: 核心是"过程","过程"指的是解决问题的步骤:就相当于在设计一条流水线 优点:复杂问题流程化,进而简单化 缺点:可扩展性差,前 ...

最新文章

  1. 中国科学院院士褚君浩:第四次工业革命和智能时代
  2. 【Flutter】Flutter 布局组件 ( FractionallySizedBox 组件 | Stack 布局组件 | Positioned 组件 )
  3. PHP预定义常量DIRECTORY_SEPARATOR
  4. 求只有2,3,5组成的第n小个数字
  5. 软件工程专业学生的自我反思
  6. Android MeasureSpec理解
  7. MariaDB—— 14.存储引擎
  8. 微信公众号网页授权步骤过程
  9. 深圳市集体户户口簿首页pdf版获取指南
  10. 什么是服务器、云服务的优缺点是什么、为什么要使用云服务器?
  11. Oracle AutoVue 使用范围
  12. Excel之match index 和vlookup函数 和双条件查找匹配
  13. 商人过河c语言实验报告,商人过河C语言程序编程
  14. word文档图标变成白纸_Word图标变成白框加WORD图标的解决方案
  15. jQuery动画+实例
  16. 红外测温仪校准-完整指南
  17. 如何用人工智能预测股票(完整答案)
  18. microstation level3 10 elliptical cone solid 、ellipsoid、polyhedron
  19. 【Node.js-6】consolidate模板引擎集成、router路由介绍
  20. cad展点插件lisp使用_CAD自动画杆路插件Autolisp该怎么使用?

热门文章

  1. linux 压缩和解压缩命令
  2. 你需要知道的基础算法知识——STL和基础数据结构(二)
  3. 男人要懂得赞美女人,女人要懂得鼓励男人
  4. c#devexpres窗体划分 以及panelcontrol 相关操作
  5. 你不得不知道的HTML5的新型标签
  6. 贪心+优先队列 HDOJ 5360 Hiking
  7. 聊聊编程那些破事-0.Prehistory
  8. Page.RegisterClientScriptBlock和Page.RegisterStartupScript有何区别
  9. 美团暑期实习前端面试
  10. MySQL日期处理函数实现博客按年月份进行分组