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

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

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

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

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

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

相关推荐
weixin_307779135 分钟前
PySpark实现ABC_manage_channel逻辑
开发语言·python·spark
lybugproducer1 小时前
创建型设计模式之:简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式
java·设计模式·建造者模式·简单工厂模式·工厂方法模式·抽象工厂模式·面向对象
??? Meggie1 小时前
【Python】保持Selenium稳定爬取的方法(防检测策略)
开发语言·python·selenium
南客先生1 小时前
马架构的Netty、MQTT、CoAP面试之旅
java·mqtt·面试·netty·coap
Minyy111 小时前
SpringBoot程序的创建以及特点,配置文件,LogBack记录日志,配置过滤器、拦截器、全局异常
xml·java·spring boot·后端·spring·mybatis·logback
百锦再1 小时前
Java与Kotlin在Android开发中的全面对比分析
android·java·google·kotlin·app·效率·趋势
武昌库里写JAVA2 小时前
39.剖析无处不在的数据结构
java·vue.js·spring boot·课程设计·宠物管理
酷爱码3 小时前
如何通过python连接hive,并对里面的表进行增删改查操作
开发语言·hive·python
画个大饼3 小时前
Go语言实战:快速搭建完整的用户认证系统
开发语言·后端·golang
喵先生!4 小时前
C++中的vector和list的区别与适用场景
开发语言·c++