问题 问答题

如下程序在编译时出错,请改正程序中的错误,使之顺利通过编译和运行。 注意:不改动程序结构,不得增行或删行。 class SubClass extends BaseClass { } class BaseClass { String str; public BaseClass() {SyStem.out.println("good"); } public BasecClass(String s) {str=s; } } public class ConstructTest1 { public static void main(String args[]) {SubClass s=new SubClass("hi");BaseClass b=new BaseClass("Java"); } }

答案

参考答案:

解析:改为SubClass=new SubClass();[讲解] 本题是考查对类构造函数的理解。当一个类中未显示定义构造函数时,默认的构造函数是以类名为函数名,参数为空,函数体为空。虽然父类中的某一构造函数有字符串参数s,但是,子类继承父类时,并不继承构造函数,所以它只能使用默认构造函数。

填空题
多项选择题