Object类,object类

【Object类,object类】个人觉得有以下几点考虑:1.继承的父类也就继承了父类的成员,增加耦合性2.父类有变动,会影响子类,而组合只需要确保接口稳定3.子类继承父类在编译期就决定了,不能动态变化,而组合可以根据需要使用不同的实现类 。如果需要向上转型,或者明确类关系是is-a的关系是需要使用继承的 。
JAVA只可以单继承但是object又是每个类的超类,在这基础上类还可以继承一个类,是什么原理?

Object类,object类


1.Java只支持单继承,但是可以实现多个接口 。如果A没有显示继承任何类,系统会默认继承Object类,但是如果A显示继承了B,系统就不会给A默认继承Object了,但是A会继承B,B继承Object,相当于A间接继承了Object 。2.说到继承就会想到面向对象里面的一个原则:优先使用组合而不是继承 。
为什么了?首先,继承和组合都是都可以达到代码复用的效果 。个人觉得有以下几点考虑:1.继承的父类也就继承了父类的成员,增加耦合性2.父类有变动,会影响子类,而组合只需要确保接口稳定3.子类继承父类在编译期就决定了,不能动态变化,而组合可以根据需要使用不同的实现类 。所以,组合更加灵活,具有可扩展性 。但是如果需要向上转型,或者明确类关系是is-a的关系还是需要使用继承的 。

    推荐阅读