位置: 编程技术 - 正文

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常用的优化方式)

  • 什么是明细分类账簿
  • 资产负债表中的固定资产是原值还是净值
  • 没有发票的费用可以抵扣企业所得税吗
  • 企业商品收入确认的依据
  • 请客户旅游算不算贿赂
  • 开票不确认收入可以吗
  • 公司转给法人备注怎么填
  • 水资源税怎么入账
  • 现金折扣退回会计分录
  • 冲销成本结转需要什么凭证
  • 有限责任公司(自然人投资或控股)
  • 计提房租的会计科目
  • 未入账成本
  • 福利费不需要发票记账吗
  • 金三打印客户端插件如何下载?
  • 如何查询企业开票记录
  • 2021年保险营销员
  • 以公司名义投资好还是以个人名义投资好
  • 自制半成品生产成本
  • 通行费发票怎么开
  • 1697508923
  • 个人缴付的年金是什么
  • 企业预付保险费怎么做账
  • 以房抵债房屋能否判决过户
  • 非上市公司转让股权需要缴纳增值税吗
  • win10老是错误
  • win10系统没有声卡驱动
  • 华为鸿蒙harmonyos官网4.0升级
  • php-ml
  • 免抵退税的账务处理
  • 收到现金股利会引起什么变化
  • php中strtotime
  • php面向对象面试题
  • 油气勘探支出包括
  • 苏格兰高地什么意思
  • php memory_get_usage
  • 图像边缘检测的基本原理
  • vue2-elm
  • 职工补贴包括哪些?
  • 怎么应对降税行业
  • mysql复制表结构及数据
  • 视同销售是填在申报表的哪一栏?
  • 小微企业增值税优惠政策最新2023
  • 新成立企业多长时间可以销售小微企业
  • 企业银行贷款保证金多少
  • 建筑业红字发票如何开
  • 业务招待费税务扣除标准
  • 成本结转怎么结转
  • 体检收据可以入档案吗
  • 持有待售的非流动资产减值能转回吗
  • 咨询费计入什么明细科目
  • 存货周转率多少属正常范围
  • 企业如何建账做账
  • 会计电算化建账的基本流程有哪些
  • solaris配置ip地址
  • Ubuntu 15.04系统怎么安装Visual Studio Code 2015?
  • Win10预览版拆弹
  • spyware.exe - spyware是什么进程
  • android linux deploy
  • linux系统chmod用法
  • dghm.exe是什么程序
  • win10一年更新一次
  • 如何找?
  • Win10 Mobile 10586.306提前上手视频评测
  • 基于stm32的100个毕业设计
  • CCAssert(sm_pSharedApplication, "")导致程序闪退的原因以及解决方案
  • shell脚本 if -e
  • shell脚本编程工具
  • vue全家桶包含哪些
  • js中调用java
  • js自定义鼠标右键菜单
  • 终于实现的图片
  • 风力发电税收优势分析
  • 天然气入户安装收费标准2023
  • 广东etc政策
  • 国家税务总局网站官网浙江
  • 增值税运输费用税额计算
  • 外地户口在绍兴读小学
  • 福建省纪检委网站
  • 住宿增值税专票税点是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设