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

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

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

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

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

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

相关推荐
starzy19902 小时前
深入理解Scala隐式类:扩展方法机制
开发语言·人工智能·scala
Pniubi3 小时前
怎么排查慢SQL,怎么解决?
java·数据库·sql
M--Y3 小时前
LangGraph 工作流模式
开发语言·javascript·python·langchain·大模型·llm·langgraph
薛之谦_4 小时前
Java 全栈知识体系:从 IDEA 高效开发到 JVM、并发与 Stream 实战
java·jvm·intellij-idea
吴可可1234 小时前
WScript Shell操作注册表详解
开发语言
纪念 2295 小时前
C++ 算法基础 (差分)
开发语言·c++·算法
文丑颜不良啊8 小时前
LeetCode2761~2780题目解析
java·leetcode
IT枫斗者枫哥8 小时前
子线程断言失败,JUnit 为什么还显示通过?
java·后端
码农小河669 小时前
基于PHP的电商后台蜜罐系统
开发语言·php
starzy19909 小时前
深入理解Scala柯里化函数:函数链式变换
开发语言·scala