分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

PHP ?单例模式

发布时间:2023-09-06 02:09责任编辑:顾先生关键词:PHP

一、什么是单例模式?

    某个类是能有一个实例对象,当自动实例化时,向整个系统提供这个实例对象

二、作用是什么?

    使用同一个实例对象,不在new新的,减少系统资源浪费

三、特点是什么?

    final标识的类【禁止继承】

    私有构造函数【防止类外实例化】

    私有克隆方法【禁止被克隆】

    私有静态属性【保存类的实例对象】

    公有静态函数【调用类的接口】

    以上行为的目的:防止程序重新实例化【消费新的资源】

四、应用场景

    常用的数据库操作类,每一次使用数据库裤操作类都要new一个新的对象,对于系统和内存资源浪费是巨大的,并且每new一个都要和数据库连接,那么数据库的连接数很快会用完

五、示例

<?php ?final class single{ ???private $rand = 0; ???// 存放实例化的对象 ???static private $obj = null; ???// 防止类外实例化 ???private function __construct(){ ???????return $this->rand = mt_rand(1,99999); ???} ???// 调用类的接口 ???static ?public function usb(){ ???????if(!self::$obj){ ???????????self::$obj = new single(); ???????} ???????return self::$obj; ???} ???public function fff(){ ???????echo $this->rand; ???} ???// 防止用户克隆 ???private function __clone(){ ???????echo ‘禁止克隆!‘; ???}}$single1 = single::usb();$single2 = single::usb();print_r($single1);print_r($single2);$single2 ->fff(); ??

PHP ?单例模式

原文地址:https://www.cnblogs.com/jxkshu/p/9461849.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved