位置: 编程技术 - 正文

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

  • 城市生活垃圾处理收费管理办法
  • 季度申报所得税费用怎么做
  • 产品质量问题赔偿账务处理
  • 资产减值损失可以抵税吗
  • 企业账号变更
  • 进项税加计扣除什么时候开始的
  • 虚开增值税发票的涉税风险如何防范
  • 滞留票的处理
  • 留存收益总额不变
  • 企业重组股权支付是什么意思
  • 出租固定资产取得的净收益计入什么科目
  • 企业收到投资者以外币投入的资本应当采用什么折算
  • 算材料成本的时候要算增值税吗?
  • 买卖汇票是什么意思
  • 没有运输经营范围能不能开运输发票
  • 劳务公司差额征税怎么计算
  • 企业与个人租赁合同范本
  • 2018增值税暂行条例
  • 社保公司返还多交的保险费会计分录怎么写?
  • 在建工程一次还是多次
  • 食用盐的增值税是多少
  • 公司房租押金收不回来账务处理
  • 企业购买可转债会计分录
  • 个体工商户的专票可以抵扣吗
  • 所得税前允许列支的税金包括
  • mac怎么设置不自动开机
  • 企业补充流动资金具体用途
  • 腾讯电脑管家怎么修复dll
  • php session实例
  • PHP:pg_result_error()的用法_PostgreSQL函数
  • 年末一般纳税人税率表
  • php中execute
  • 处理固定资产怎么交税
  • 商品销售成本怎样计算
  • 2023前端面试题目100及最佳答案
  • sbc奇思妙想
  • idea如何运行别人的vue项目
  • 计算机视觉算法
  • 销项负数发票需要入账吗
  • 委托开发软件的版权归委托人所有
  • 怎么能开公司
  • 营业外收入在现金流量表中填入哪列
  • javascript前端开发案例教程源码
  • Switch Between Gnome And KDE Desktops In Ubuntu Or Kubuntu
  • 原材料结转成本有几种方法
  • 增值税的征收对象是谁
  • 理财产品怎么分类总结
  • mysql数据类型char
  • 住房公积金有什么好处和优势?
  • 进项税额有留底怎么做分录
  • 机票会计代理如何做
  • 应收票据的分录怎么做
  • 公司送客户的礼品账务处理
  • 劳务派遣的工资是谁发的
  • 建筑工程公司的经营范围有哪些
  • 收到汽车抵账账务处理
  • 开具其他发票收入填报异常
  • 私人网银可以转账吗
  • 房地产企业发行长期债券的增信方式有哪些
  • 利用phpmyadmin写shell的方法
  • mysql的性能调优
  • Mysql主从同步的实现原理
  • Winpack.exe - Winpack是什么进程
  • 32.exe 什么病毒
  • 如何设置滑屏方式
  • xp系统电源设置在哪里
  • win 7组策略
  • win8系统怎么重新安装系统
  • 外国电影怎么看双语的
  • Win7系统电脑开机无法进入桌面
  • cocos2d游戏引擎
  • 如何理解js中的原型
  • activity生命周期的方法
  • shell脚本配置环境
  • js获取父窗口
  • python爬虫有道翻译
  • python+flask
  • 地方税务局属于地市级还是副省级
  • 运输装卸费属于增值税价外费用吗
  • 教育费附加地方教育费附加税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设