软设之类的继承与泛化,多重继承

在类中,假如父类已经写好属性或方法,子类想要实现相同的功能,不用专门写代码,直接用专门的继承语言继承就可以了。

比如说有一个动物类,有毛色和叫这两个属性和方法,又写了一个子类是猫类,猫类也需要实现毛色和叫这两个属性和方法,不必专门就毛色和叫再写一遍代码,直接继承动物类的毛色和叫就可以了。

另外猫类除了可以继承动物类的毛色和叫之外,还可以另外写方法高度和跑,这种子类继承父类之后又新增方法和属性叫作泛化。

子类是父类的特殊化;父类是子类的泛化。

假如有多个父类,都有相同的属性和方法,比如说有虎类,狮类都有毛色,虎类毛色属性值是纹路,狮类属性值是纯色。假如有一个子类是狮虎类,想要继承毛色这个属性,就是二义性,在java语言里是不允许的,在c++是可以的。

相关推荐
她说..2 小时前
Java 对象相关高频面试题
java·开发语言·spring·java-ee
watson_pillow2 小时前
c++ 协程的初步理解
开发语言·c++
庞轩px2 小时前
深入理解 sleep() 与 wait():从基础到监视器队列
java·开发语言·线程··wait·sleep·监视器
故事和你913 小时前
洛谷-算法1-2-排序2
开发语言·数据结构·c++·算法·动态规划·图论
皮皮林5513 小时前
面试官:ZSet 的底层实现是什么?
java
码云数智-大飞4 小时前
C++ RAII机制:资源管理的“自动化”哲学
java·服务器·php
2601_949816584 小时前
Spring+Quartz实现定时任务的配置方法
java
白毛大侠4 小时前
理解 Go 接口:eface 与 iface 的区别及动态性解析
开发语言·网络·golang
李昊哲小课4 小时前
Python办公自动化教程 - 第7章 综合实战案例 - 企业销售管理系统
开发语言·python·数据分析·excel·数据可视化·openpyxl
Hou'4 小时前
从0到1的C语言传奇之路
c语言·开发语言