php设计模式--单例模式
单例模式顾名思义:
这个类只能实例化一次.不能被克隆.一般被用来处理数据库操作等需要频繁使用,但是多次实例化又很浪费内存的类.
下面是一个带有注释的实例:
<?php
#单例模式
######################
class Single{
private static $instance; #定义私有静态属性,用来存放本类实例化后的对象.
private function __construct(){} #私有构造方法,防止new实例化操作.
public static function getInstance()
{
if(!(self::$instance instanceof self))
#instanceof又两个用途
# 1.判断前面那个是否是后面的对象
# 2.判断前面的是否实现类后面的接口
#这里如果$instance属性内部已经存储了对象,那么无需在实例化了
{
self::$instance=new self;
}
return self::$instance; #返回属性自身,当然现在已经是对象了.
}
public function info()
{
echo "this is a test"; #测试方法.
}
public function __clone()#如果外部进行克隆那么返回一个致命错误.
{
trigger_error('Clone is not allow!',E_USER_ERROR);
}
}
$e=Single::getInstance(); #调用静态方法,这个方法也是单例模式的精髓.
$e->info();
?>
转载于:https://blog.51cto.com/phpwzh/1717766
php设计模式--单例模式相关推荐
- Python设计模式-单例模式
Python设计模式-单例模式 基于Python3.5.2,代码如下 #coding:utf-8 import threading import timeclass Singleton(object) ...
- Android设计模式——单例模式(Singleton)
二十三种设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模式.享元 ...
- 【学习笔记】ABAP OOD设计模式 - 单例模式
ABAP OOD设计模式 - 单例模式 整理转自-<SAP ABAP 面向对象程序设计(原则.模式及实践)> 单例模式(Singleton Pattern)是常用的且较为简单的软件设计模式 ...
- Go 语言实现 23 种设计模式 单例模式
Go 语言实现 23 种设计模式 单例模式 单例模式 单例模式是一种常用的软件设计模式,在使用过程中,单例对象的类只有一个实例.使用单例模式,1 可以节省内存等资源,例如windows操作系统的资源管 ...
- java singleton inner class_Java面向对象设计模式-单例模式
Java面向对象设计模式-单例模式 2020-05-28 589 0 单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点,有多重实现方式. 一.饿汉式单例模式,构造方法私有化,在加载类Sin ...
- Java开发中常用的设计模式-单例模式
单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式. Java开发中常用的设计模式-单例模式 单例模式有3个特点: 单例类只有一个实例对象: 该单例对象必须 ...
- 炒冷饭系列:设计模式 单例模式
2019独角兽企业重金招聘Python工程师标准>>> 炒冷饭系列:设计模式 单例模式 摘要: 原创出处: http://www.cnblogs.com/Alandre/ 泥沙砖瓦浆 ...
- 设计模式-单例模式-注册式单例模式-枚举式单例模式和容器式单例模式在Java中的使用示例
场景 设计模式-单例模式-饿汉式单例模式.懒汉式单例模式.静态内部类在Java中的使用示例: 设计模式-单例模式-饿汉式单例模式.懒汉式单例模式.静态内部类在Java中的使用示例_霸道流氓气质的博客- ...
- 设计模式----创建型设计模式(单例模式、工厂方法模式、构建者模式)
创建型设计模式 单例模式(Singleton Pattern) 单例模式介绍 代码演示 饿汉式(静态常量) 饿汉式(静态代码块) 懒汉式(线程不安全) 懒汉式(线程安全,同步方法) 懒汉式(线程安全, ...
- 小视频源码,设计模式单例模式
小视频源码,设计模式单例模式实现的相关代码 .一,单线程时候推荐 /*** Created by Shinelon on 2018/10/11.* 单利模式 懒汉式 -->单线程推荐使用*/pu ...
最新文章
- robotframework手机号随机产生脚本
- C#类中的internal成员可能是一种坏味道
- 基于CkEditor实现.net在线开发之路(1)
- oracle之高级子查询2
- 学.net还是php,ASP.NET和php哪个更容易学
- html前进2格2em,HTML2
- WebGIS设计思想
- vue组件系列3、查询下载
- 如何在eclipse中配置反编译工具JadClipse
- NginxWebUI - 图形化的 Nginx 配置管理工具
- Python字典知识总结
- 微信砍价 php,GitHub - YInJunWen/bcwx: vue2+thinkPHP5.1 前后端分离的微信砍价
- 晨星、银河基金业绩排行榜数据转换工具
- 微信小程序 (布局适配与物理逻辑像素)
- 苹果手机有4g信号但是微信未连接服务器,苹果5s有显示4g网络但无上微信 是不是那里设置了 今天才出现的...
- 二维码(生成二维码和扫描二维码)超简单 超简易
- android 网易新闻 详情页面实现,Android实现网易新闻客户端首页效果
- Android 支付宝商户-签约代扣 一个坑的记录(4001)
- 2022-07-28 xm-select 的使用
- 【雷神笔记本快捷键】雷神笔记本FN功能快捷键大全以及电脑CPU处于低功耗但电脑风扇高速转动噪音较大解决方案