百度试题 题目Java的每个子类的构造函数都要显式的调用它的直接父类的构造函数。 A.正确B.错误相关知识点: 试题来源: 解析 B
public Animal(String name) { this.name = name;} } 子类:public Dog extends Animal{ //这是你就要显示的调用父类的构造方法,因为子类默认调用的是父类的 //无参构造方法Animal()public Dog(){ super("小狗"); //显示调用父类的有参构造方法 ... //子类的构造方法处理 } } 当然,...
StrA()//父类无参构造函数StrB(inti):123 也可以通过子类构造函数的初始化列表来显示调用 接下来,修改上面子类的StrB(string s)函数,通过初始化列表调用StrA(string s)父类构造函数 改为: StrB(strings): StrA(s) { cout<<"StrB(int i):"<<s<<endl; } 运行打印: StrA(strings):123StrB(inti):123 ...
但你的子类代码中没有显式去调用Parent的那个构造函数,Parent就无法完成初始化。 何时子类必须显式调用父类构造函数: 1 父类没有默认构造函数(这时候子类必须无条件显式写一个任意的构造函数包括默认构造函数,第一句就是super(...)) 2 父类有默认构造函数,但子类的构造函数不想jvm调用父类默认的那个构造函数, ...
不是。生成派生类的实例时,编译器会自动先调用父类构造函数来生成父类。不用自己在派生类构造中调用父类构造。
不用……一般如果自己写了带参构造函数,就需要自己手动写一个无参构造函数。你不写有参的构造函数,就会默认的生成一个无参构造函数。上面这个问题只需要在父类自己写个无参构造函数就没有问题了,其实这样的问题,你可以在IDE上敲代码试试就知道了,可能印象会更深刻一点 ...
什么时候必须显式的调用父类构造函数 我来答 分享 微信扫一扫 网络繁忙请稍后重试 新浪微博 QQ空间 举报 浏览40 次 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 构造函数 搜索资料 本地图片 图片链接 代码 提交回答 匿名 回答自动保存中...
在下面关于子类调用父类构造函数的说法,错误的是( ) A. 在子类中,如果不显式的使用base来调用父类构造函数,子类会隐式的使用base调用 B. 在子类中,可以指定
StrA()//父类无参构造函数StrB(int i):123 也可以通过子类构造函数的初始化列表来显示调用 接下来,修改上面子类的StrB(string s)函数,通过初始化列表调用StrA(string s)父类构造函数 改为: 代码语言:javascript 复制 StrB(string s):StrA(s){cout<<"StrB(int i):"<<s<<endl;} ...
StrA()//父类无参构造函数StrB(inti):123 也可以通过子类构造函数的初始化列表来显示调用 接下来,修改上面子类的StrB(string s)函数,通过初始化列表调用StrA(string s)父类构造函数 改为: StrB(strings): StrA(s) { cout<<"StrB(int i):"<<s<<endl; ...