位置: 编程技术 - 正文

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

  • 普通发票为什么只能领一张
  • 固定资产中的动态投资包括
  • 个体工商户怎么变更法人
  • 生产企业退税计算方法怎么选择
  • 化工原材料销售挣钱吗
  • 合法有效的凭证
  • 房屋租赁需要交税吗?
  • 准予抵扣的进项税额计算公式
  • 电费应收电费和实际电费
  • 模具可以申请专利吗
  • 会计职业道德的作用
  • 小规模公司零申报怎么操作流程
  • 高亮!这些发票不能抵扣增值税
  • 视同销售行为销项税额该怎么核算
  • 主营业务成本结转方法
  • 发票已认证对方起诉有效吗
  • 未分配利润可以转实收吗
  • 境内个人去境外开设公司
  • 专用发票和普通发票的区别在哪里
  • 股东以资产入股公司
  • 小规模纳税人 核定
  • 其他应付转到其他应收
  • 开通电子税务局需要什么资料
  • 企业支出的辞退补偿金
  • iphone如何录音转文字
  • 向境外股东分配利润怎么交税
  • 上市公司发行股票是好还是坏
  • php字符串定义
  • macbook air怎么点击
  • win10显示未充电
  • vnisedit 打包
  • 会计中的计算公式
  • php的strcmp
  • php php.ini
  • 全局函数使用
  • 查补的增值税账务处理
  • 强大的图片预览软件
  • 为什么我会选择那个对我一般的男人结婚
  • 计算机视觉算法
  • 用友u8删除凭证的步骤
  • 注销营业执照的电话号码是多少
  • HTTP Tunneling (HTTP Proxy Socket Client)
  • 2201应付职工薪酬
  • python 自定义异常
  • 个体户增值税减免申报明细表怎么填
  • 购买增值税发票系统属于什么科目?
  • mysql如何开启
  • 机械租赁收入算成本吗
  • 有限合伙企业需要缴纳企业所得税吗
  • 异价调拨什么意思
  • 房地产企业固定资产贷款
  • 母公司代发子公司工资,子公司申报个税
  • 日常费用报销管理制度
  • 企业无偿为员工买社保
  • 固定资产处置有什么问题
  • sql server服务包括有
  • mac备忘录怎么使用
  • linux之间拷贝文件
  • macosmajove
  • centos 开机启动
  • linux判断程序是否运行
  • 删除window
  • linux系统怎么启动软件
  • linux中xargs的含义
  • Unity3D游戏开发毕业论文
  • css怎么更换图片
  • jquery课程总结
  • TypeScript Type Innference(类型判断)
  • js 获取iframe
  • android基础入门教程
  • python3.7 pip
  • unity5权威讲解
  • javascript如何绘制曲线
  • ubuntu安装步骤详解
  • 宁波出租车购买
  • 收到海关进口增值税专用缴款书怎么确定库存商品的金额
  • 公司购买车辆是什么费用
  • 购车发票包含
  • 车辆购置税退税申请表
  • 车船使用税减免法律规定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设