接口与继承-动手动脑

一、运行 TestInherits.java 示例

答:结论:通过 super 调用基类构造方法,必须是子类构造方法中的第一个语句。

二、为什么子类的构造方法在运行之前,必须调用父类的构造方法?为什么不能反过来?

答:子类是从父类继承来的,所以想用子类创建对象的时候,必须要先建立父类的对象,子类有父类的属性和方法;就要给父类的属性分配内存空间,在创建对象的时候如果父类中的数据需要初始化,那么就必须要调用。

三、运行Address.java

答:

四、运行ExplorationJDKSource.java

答:这个在main方法实际上调用的是:String类的valueOf方法。valueOf方法内部又调用Object.toString方法:

        Public String toString(){

            return    getClass().getName()+”@”+Integer.toHexString(hashCode());

 

五、运行Fruit.java

答:Fruit类覆盖了Object类的toString方法, 在“+”运算中,当任何一个对象与一个String对象,连接时,会隐式地调用其toString()方法,默认情况下,此方法返回“类名 @ + hashCode”。

原文地址:https://www.cnblogs.com/yyting/p/4943849.html