84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
"一个类可以直接继承多个接口,但只能直接继承一个类(包括抽象类)。"与C++的多继承不矛盾吗?
ringa_lee
应该是 一个类智能继承自一个类(包括抽象类),但是可以实现多个接口继承是直接继承,而接口是某种规范,我去遵循某些规范我觉得这样理解更好一些
c++ 本来就是Simular体系的 就不说了多继承意义并不是太大
C++的多继承是真的多继承,功能更强大,不过也更不好用。所以java等语言干脆不让继承多个基类了,只能继承一个基类,可以实现多个接口。这两种方式说不上哪种更好,反正是各有千秋吧。我记得《CLR via C#》里面就说过一句,为了避免多继承所以C#只能继承单个类,结果搞到最后很多坑。反正如果不是语言大牛,普通情况下都有这折中方案,咱们能用就行了
应该是 一个类智能继承自一个类(包括抽象类),但是可以实现多个接口
继承是直接继承,而接口是某种规范,我去遵循某些规范
我觉得这样理解更好一些
c++ 本来就是Simular体系的 就不说了
多继承意义并不是太大
C++的多继承是真的多继承,功能更强大,不过也更不好用。所以java等语言干脆不让继承多个基类了,只能继承一个基类,可以实现多个接口。这两种方式说不上哪种更好,反正是各有千秋吧。我记得《CLR via C#》里面就说过一句,为了避免多继承所以C#只能继承单个类,结果搞到最后很多坑。反正如果不是语言大牛,普通情况下都有这折中方案,咱们能用就行了