接口与继承的课后作业
1、运行 TestInherits.java 示例
通过 super 调用基类构造方法,必须是子类构造方法中的第一个语句。而且在调用时,对于符号的类型必须相同。
2、为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来?
答案:不能反过来,因为基类和子类就像现实中的父亲和子女一样,如果反过来就乱了辈分,而且对于子类不知道有几个子类继承父类,如果反过来,就相当于不知道父类要继承几个子类。
3、运行Address
4、运行ExplorationJDKSource.java
答:这个在main方法实际上调用的是:String类的valueOf方法。valueOf方法内部又调用Object.toString方法:
Public String toString(){
return getClass().getName()+”@”+Integer.toHexString(hashCode());
}
5、运行Fruit.Java
前页的示例中,Fruit类覆盖了Object类的toString方法。在“+”运算中,当任何一个对象与一个String对象,连接时,会隐式地调用其toString()方法,默认情况下,此方法返回“类名 @ + hashCode”。为了返回有意义的信息,子类可以重写toString()方法。