继承|学习笔记

简介: 快速学习继承

开发者学堂课程【PHP 进阶教程-由浅入深掌握面向对象开发-第二阶段继承】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/712/detail/12688


继承

 

主要内容:

一、目标

二、概念

三、步骤

 

学习 PHP 的继承,之前已经讲解如何去封装类,那么在封装类的过程中,类封装的大小未知,类里面代码的某些东西是共用的,应该如何操作及体现。通过继承之后,可以实现代码的复用,还有结构的承载。

 

一、目标

理解继承的概念,掌握继承架构带来的效果

二、概念

继承:inherit,子类合法拥有父类某些权限

指父类已有的东西,子类可以直接拥有,将它称之为继承。
(1)继承必须满足继承关系:即存在合理的包含关系

包含关系的解释,例如,人类是一个很大的概念,但是人类可以分为男人和女人,此时男人、女人和人类以及儿子和父亲之间就形成了一个继承关系。但人跟牛之间是绝对没有继承关系的,故必须要保证有一个合理的包含关系,才是继承。也就是说,子类属于父类的一个分支,如此才能形成子类去继承父类,这点关系十分重要,故进行再次强调。因为在操作的过程中,若是初学者使用的时候,必须要清楚采用继承的时间。否则代码及结构会十分混乱。
(2)继承的本质是子类通过继承可以直接使用父类已经存在的数据和数据操作。

指属性和方法。若子类继承父类,如果子类没有任何东西,没做任何事情,也可以直接继承父类,这种继承的特性是发现代码可以直接复用。若有父类已经完成,子类可以直接使用。

(3)不同编程语言的继承机制和方式不一样,PHP 中使用 extends 关键字表示继承

指类与类的继承。

 

三、步骤

1、创建父类

通常是比较抽象的,大概的类,定义的方法和属性也都是比较大众的

例如,人类其实是抽象的,定义的方法和属性也是大众的。若是比较偏比较细的方法,就不会进行定义。例如人类概念里面的定义有一些是大众的,比如眼睛、嘴巴等,功能有能吃饭、能睡觉、能喝水等,但是有阴阳眼的这种功能就是十分小众的,在人类里面也不一定存在,需要具体到某一个子类的分支下面才有的一种特性,故不适合,这就是大众的要求。

2、创建子类
子类与已有父类之间属于包含关系:父类包含子类

子类创建时明确继承父类: extends
3、实例化子类对象后,子类对象可以直接访问子类不存在而父类存在的属性和方法

 

四、示例

1.继承的基础

子类(要继承其他类的类,也称之为派生类)与父类(被继承类,也称之为基类)之间本身是一种包含于被包含关系,如此才有可继承的前提

image.png

2.继承关键字

extends,子类想要继承父类,则必须在子类结构申明时明确使用 extends 关键字来继承相关类

image.png

男人、女人及人类之间形成了代码间真正的继承关系。

3.继承效果

子类可以不用自己去实现某些功能,而可以直接访问父类中已经存在的成员

image.png

以上体现了继承的特点,当前讲解的为概念,代码暂时不作演示。

 

五、小结

1、继承 extends 是面向对象思想中实现代码重复利用的重要特性

先有继承,后才有真正的代码复用。

2、继承是指子类可以直接访问父类中已经存在的成员,此为继承的特性。
3、继承可以节省代码工作,同时允许子类中进行扩展,即在子类中增加必要的父类不存在的功能

例如,man 里面可以有额外的内容,父类已有的或者还未有的都可以,不仅能实现代码的复用进行继承,还能实现自己的扩展,故此不局限于已有的类,父类不局限子类的发展路径,子类不仅可以继承父类,同时还有自己的发展,是符合人类的发展思维逻辑的,此为继承功能。

相关文章
|
Linux 开发工具 Android开发
在线抓娃娃的基本技术架构
线上视频抓娃娃风口正劲。用户可以通过手机遥控实体娃娃机,从正面与侧面两个视角判断爪子的位置,如果抓到了娃娃,可以选择寄送到家。
2043 0
|
编解码 Android开发 Windows
如何实现简单粗暴靠谱的直播抓娃娃方案
市面上的娃娃机方案五花八门,daniulive认为最简单靠谱粗暴性价比的方案如下: RTMP摄像机-->CDN-->daniulive player(专门针对直播娃娃机开通了“超低延迟”模式,公网实际延迟在200~400毫秒). 娃娃机抓取过程录制方案: 行业内首屈一指的录制方案,利用大牛直播播放端SDK,支持两个摄像头切换过程中(SmartPlayerSwitchUrl)录制到同一个MP4文件,便于用户分享抓取过程或进行申诉。
1546 0
郭杨·靖康·郭靖杨康
比较过几版郭靖杨康的影视造型,还是觉得83版最准确:黄日华的郭靖土头土脑,确实看起来就拙笨;苗侨伟的杨康自带贵公子气质。 昨晚看完杨康之死,二刷射雕兴致已尽。
1304 0
|
物联网
『每周观察』:“在线抓娃娃”开启新娱乐窗口
华人是出了名的努力、勤奋、吃苦耐劳,我们太需要给自己新的娱乐方式了。 本周三,两场别开生面的“在线抓娃娃”的讨论不约而同的进行,技术解决方案商、产品运营、投资人纷纷加入这场讨论,也凸显了“在线抓娃娃”所撬动的巨大市场——一个将线上与线下巧妙结合的娱乐消费窗口。
1337 0
最简单靠谱的直播抓娃娃方案
市面上方案来来回回扯了那么多,最简单靠谱的方案如下: RTMP摄像机推流到CDN,然后用daniulive 的player,公网毫秒级延迟。
1483 0
|
6天前
|
存储 弹性计算 人工智能
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
2025年9月24日,阿里云弹性计算团队多位产品、技术专家及服务器团队技术专家共同在【2025云栖大会】现场带来了《通用计算产品发布与行业实践》的专场论坛,本论坛聚焦弹性计算多款通用算力产品发布。同时,ECS云服务器安全能力、资源售卖模式、计算AI助手等用户体验关键环节也宣布升级,让用云更简单、更智能。海尔三翼鸟云服务负责人刘建锋先生作为特邀嘉宾,莅临现场分享了关于阿里云ECS g9i推动AIoT平台的场景落地实践。
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
|
5天前
|
云安全 人工智能 自然语言处理
阿里云x硅基流动:AI安全护栏助力构建可信模型生态
阿里云AI安全护栏:大模型的“智能过滤系统”。
|
5天前
|
人工智能 自然语言处理 自动驾驶
关于举办首届全国大学生“启真问智”人工智能模型&智能体大赛决赛的通知
关于举办首届全国大学生“启真问智”人工智能模型&智能体大赛决赛的通知
|
Linux 虚拟化 iOS开发
VMware Workstation Pro 25H2 for Windows & Linux - 领先的免费桌面虚拟化软件
VMware Workstation Pro 25H2 for Windows & Linux - 领先的免费桌面虚拟化软件
1080 4