位置: 编程技术 - 正文

PHP类的封装与继承详解(php封装api)

编辑:rootadmin

推荐整理分享PHP类的封装与继承详解(php封装api),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php封装数据库类,php源码封装,php封装函数,php封装api,php封装函数,php 封装,php封装继承多态的理解,php封装继承多态的理解,内容如对您有帮助,希望把文章链接给更多的朋友!

封装

把成员方法和成员属性封装到类中,隐藏属性和方法实现的细节,通过public、protected、private等限定类成员的访问权限,数据被保护在内部,只通过被授权的成员方法才可以操作,尽可能的对成员进行封装。

public:方法或者属性在任何作用域下都可以访问到,而且是默认的,如果没有为一个属性或方法指定访问修饰符,它将是public。protected:本类和子类可以访问,外部对象不可以调用。private:只能在本类访问,子类与外部对象都不可能调用。经过private标记的方法或者属性可以在继承类中重新定义,每一个类只能看到它自己定义的私有方法。

这三个修饰符从作用范围上来讲应该像这样从大到小排序:public→protected→private之所以说是在作用范围上,是因为类把一些属性和方法进行了封装,这个封装就决定了数据的“可见性”,这样我们在类的外面不能够随意修改所定义的属性和方法而只能够进行调用,这就是封装的好处,同时也提高了安全性。我们给出代码示例:

通过运行以上示例我们得到一个“Public”,但当你把//echo $obj->private;的注释去掉时,你会得到一下如下的错误:

PHP类的封装与继承详解(php封装api)

Fatal error: Cannot access protected property myClass::$protected in E:apachehtdocsexamplefile.php on line 。

可以看到我们不能随意去访问类的属性定义,我们在“外面”是不知道这个类中到底有那些成员,因为这些成员对于其他的类可能是不可的。当然如果我们一定要访问或者修改定义为“私有”的属性时,也可以使用PHP所提供的系统方法:_get()和_set()。

继承

可以使一个类继承并拥有另一个已经存在类的成员属性和方法,被继承的类称为父类或基类,继承类为子类。通过extends关键字实现继承关系。通俗来说,要有继承就得有一个“根源”,这“根源”你可能想像你以后生了儿子或者女儿,他们会从你这里得到一些“东西(属性和方法)”,这样你的“后代”就是持有你(根源)所有的一些特征了。

产生“根源”类(父类或者基类)语法:class father{}

产生“后代”(子类)语法:class son extends father{}

PHP extends类继承示例代码:

解析:在父类father里,我们定义了一般的属性和方法,然后定义子类。你可能发现在子类里内是没有构造函数和析构函数的,因为子类是继承了父类的所有方法,所以可以调用$my_son->work(); 这就是PHP类的继承了。另外要注意:PHP不能多层继承,如:class A extends B extends C,这样的继承在PHP中是无效的,PHP里只有单继承,不能多继承,需要其他办法变相“实现”多继承。

标签: php封装api

本文链接地址:https://www.jiuchutong.com/biancheng/275297.html 转载请保留说明!

上一篇:PHP比较运算符的详细介绍(php比较大小的函数)

下一篇:PHP代码优化技巧小结(php常用的优化方式)

  • 计提税额与实缴税额的区别是什么?
  • 服务外包行业要交社保吗
  • 柴油车尾气处理液会计分录
  • 如何查询对方是不是一般纳税人
  • 应付职工薪酬月末怎么结转
  • 成本收入不配比的风险有哪些
  • 收回已冲销的坏账分录
  • 外经证预交几个点
  • 租赁合同交税一般交多少钱
  • 土地使用权价格计算公式
  • 折旧方法改变属于会计政策变更还是估计变更
  • 通讯费可以个人承担吗
  • 负债必须通过转让来清偿
  • 服务业如何确定收入
  • 未进行账务处理违反什么
  • 如何网上认证发票流程
  • 建筑业营改增实施指南
  • 小轿车折旧年限规定
  • 土地使用税计税依据及计算方式
  • 国债逆回购会跌吗
  • 制造费用明细科目有哪些
  • 负债率是什么指标
  • 固定资产出售收入属于什么收入
  • 公司开业厂商的宣传文案
  • excel2019文件加密
  • windows无法连接到system Events
  • php ftell
  • 有了php源码该如何使用 新手
  • 税收优惠方式有几种
  • thinkphp6调用模型的方法
  • 技术人员工资属于什么费用
  • 智能优化算法书籍推荐
  • vuexl
  • python中文分词代码
  • opencv几何变换
  • 房租税务局代增值税发票 税点
  • 二季度平均薪酬
  • 银行利息的收入计入什么科目
  • 固定资产折旧完报废账务处理
  • 限额领料单属于什么凭证多选题
  • 预收账款可以用什么科目核算
  • 增值税不含税销售额填在哪里
  • 担保公司的风险准备金在报表中如何反应
  • 合同不交印花税怎么处理
  • T-SQL语句修改数据表属性
  • 个人所得税手续费返还增值税申报表怎么填
  • 外购豆油给送客户好吗
  • 存货核算方法有五种
  • 免抵退税和留抵退税计算题
  • 发票做帐有什么用
  • 投入产出法如何申报
  • 法院去单位直接扣划单位薪酬
  • 房地产增值税发票是什么意思
  • 固定资产抵扣过处置还能简易计税吗
  • 固定资产错记到费用了怎么办
  • 公司往来借款怎么做账
  • 处置投资性房地产取得的收入属于企业收入吗
  • 工程发票可以分两次开吗
  • 企业净资产怎么填
  • mysql oracle和sqlserver分页查询实例解析
  • Linux下MySQL 5.6.27 安装教程
  • ubuntu20.04怎么用
  • windowsxp文件
  • u盘安装mac系统
  • 64位win10预览版10565更新补丁KB3105208后蓝屏怎么办?
  • Mac苹果系统怎么转换中文
  • dyservice.exe是什么
  • windows端口占用怎么关闭
  • centos如何操作
  • linux常用命令 cat
  • win8 系统设置
  • 升级win10系统后安装谷歌打不开
  • handle thread
  • unity ui坐标
  • viewpager2+fragment
  • 批处理文件夹内文件名
  • python元祖内置函数
  • Python中断言语句
  • javascript学习指南
  • 国家税务总局全国增值税查验平台
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设