位置: 编程技术 - 正文

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

  • 佣金和手续费支出 纳税调整
  • 计提附加税的金额怎么算
  • 个人捐款合法吗
  • 代订餐如何赚钱
  • 利息支出可以抵扣吗
  • 个人收外汇有限制吗
  • 加计抵扣进项税进营业外收入
  • 退回以前年度所得税费用会计分录
  • 企业收到的投资者的超出其在企业
  • 有两种税率的如何填申报表
  • 委托收款结算方式流程图
  • 所得税预缴申报表中营业成本怎么计算
  • 应收账款核销后收回
  • 境外分回的股息并入应纳税所得
  • 小规模纳税人转成一般纳税人条件
  • 公司不收员工的个人所得税怎么处理?
  • 增值税减免明细表怎么填
  • 营改增后还有建筑业发票吗
  • 电子发票可以打多少行
  • 红字发票冲红步骤
  • 营改增的作用
  • 发票对方已认证怎么冲红
  • 固定资产进项发票可以抵扣吗为什么
  • 增值税预缴税款表
  • 丧失控股权的后果
  • 工资薪金支出账载金额小于实际发生额
  • 电脑开机黑屏没信号怎么回事
  • 配电安装施工方案
  • 中文字符和英文字符的转换
  • 360pci.exe
  • 母公司向子公司发行面值100万元、期限为三年
  • 7zip怎么压缩文件为rar
  • win10不关机设置方法
  • hpdskflt.sys
  • php安装扩展fileinfo
  • 土地测绘费用会计科目
  • 公司给员工购买商业保险报销哪些
  • 关于laravel应用中的各个目录的作用,说法错误的是
  • 自己的智能ai聊天怎么用
  • 目标检测算法有哪些
  • webgl1.0
  • PHP magento后台无法登录问题解决方法
  • 铁路运费的印花税进什么科目
  • 核定征收需要申报吗
  • phpcms rce
  • python ide包括哪些
  • 在阿里云的云主机之间怎么通信
  • 发票已经勾选却统计不出来
  • mysql集群配置
  • 财务费用账户属于什么账户
  • 两处取得工资薪金如何申报
  • 在建工程增多
  • 企业所得税年度纳税申报表A类怎么填
  • 已开普通发票记账联丢失怎么办?
  • 海关双抬头进口增值税发票如何抵扣
  • 个税手续费怎么计算
  • 防暑降温费怎么入账
  • 出口收汇业务基本原则
  • 开发票没有银行回单可以入帐吗?
  • 营业费用占比
  • 应付职工薪酬都要报个税吗
  • 怎样理解企业财务会计的定义
  • 天猫佣金是什么意思
  • 收到个人支付的培训费可以开对公的发票吗
  • mysql批量添加字段
  • mysql优化sql有哪些
  • mysql函数返回值类型
  • Win7 64位旗舰版设置字体显示比例让字体变大
  • centos的防火墙怎么关
  • cocos2dx官方教程
  • jquery.js
  • 命令以管理员运行
  • android:gravity和android:layout_gravity的区别
  • 使用scp获取远程linux服务器上的文件 linux远程拷贝文件
  • html框架frameset代码
  • 用python简单代码
  • 文章标题的作用有哪些?
  • 如何查询车辆购置税发票
  • 深圳税务局关于个体户开具普通发票有关问题的通知
  • 国家税务网上办税服务厅官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设