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

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

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

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

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

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

相关推荐
Halo_tjn1 分钟前
虚拟机相关实验概述
java·开发语言·windows·计算机
star _chen4 分钟前
C++实现完美洗牌算法
开发语言·c++·算法
周杰伦fans11 分钟前
pycharm之gitignore设置
开发语言·python·pycharm
摆烂z33 分钟前
Docker与Jib(maven插件版)实战
java
RainbowSea38 分钟前
从 Spring Boot 2.x 到 3.5.x + JDK21:一次完整的生产环境迁移实战
java·spring boot·后端
笨手笨脚の40 分钟前
Spring Core常见错误及解决方案
java·后端·spring
奶油松果43 分钟前
Springboot自动装配 - redis和redission
java·spring boot·redis
别叫我->学废了->lol在线等1 小时前
演示 hasattr 和 ** 解包操作符
开发语言·前端·python
霍夫曼1 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
VX:Fegn08951 小时前
计算机毕业设计|基于Java人力资源管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端·课程设计