java基础-java为什么不支持多继承
2020-02-03 本文已影响0人
努力做一个好人
典型的支持多继承的语言就是C++。在OOP的世界里,单根继承意味着所有的类都会有一个最上面的终极类,java里面这个类就是Object。单根继承既可以说是一门语言的特性,也可以说是一门语言的一个选择。从纯粹技术的角度来说,java也可以做到多继承,只是如果那样的话那么java就不会再是我们今天所认识的java。除此之外,单根继承还有下面这些优点:
单根继承的优点1:兼容性
单根继承带来的一个效果就是所有的对象归根到底都是相同的基本类型。这带来的好处就是任何java出现的新类库中,兼容性的问题会大大降低,这一点很好理解。但是在C++之中,总是会有一些不兼容的接口,这虽然带来了一定的灵活性,但是对于不兼容的接口,往往就是要通过多继承来解决。
单根继承的优点2: 便利性
因为单根继承,所有的对象都会具备某些一样的功能,比如所有的对象都会有hashcode方法,有euqals方法。因此拿到一个对象时,无论这个对象从哪里来,我们都知道可以对他执行某些基本操作。参数传递也得到了简化。
单根继承的优点3: 垃圾回收
单根继承会使得垃圾回收变得简单很多。因为所有对象都保证具有其类型信息,因此不会因为无法确定类型信息而带来不便。垃圾回收正是java相对于C++的重要改进之一。