Java 在给定的代码中,编译器将插入super();两个动物构造器中的语句?
否,对于调用另一个构造函数的Java 在给定的代码中,编译器将插入super();两个动物构造器中的语句?,java,Java,否,对于调用另一个构造函数的Animal()构造函数(使用this(makeRandomName());),将不会添加super()。它将仅添加到动物(字符串名称)构造函数中 当然,这意味着两个构造函数都将执行超类的构造函数(即对象的构造函数)。将插入super()调用,除非存在super()或This()呼叫已明确出现。忽略第5行中的6为什么人们对动物如此感兴趣?我想我在过去的44分钟里看到了3个问题,他们的实验使用了这个名字。你能编辑这个问题吗。首先使用大括号使代码缩进良好代码开始代码结束如
Animal()
构造函数(使用this(makeRandomName());
),将不会添加super()。它将仅添加到动物(字符串名称)
构造函数中
当然,这意味着两个构造函数都将执行超类的构造函数(即对象的构造函数)。将插入super()
调用,除非存在super()
或This()
呼叫已明确出现。忽略第5行中的6为什么人们对动物如此感兴趣?我想我在过去的44分钟里看到了3个问题,他们的实验使用了这个名字。你能编辑这个问题吗。首先使用大括号使代码缩进良好<代码>代码开始代码结束
如上所述。可能是家庭作业@Hackerdarshi:)不,不会。只进入不a)使用this
调用另一个构造函数或b)调用super
的构造函数。
public class Animal {
String name;
Animal(String name) {
this.name = name;
}
Animal() {
this(makeRandomName());
}
static String makeRandomName() {
int x = (int) (Math.random() * 5);
String name = new String[] {"Fluffy", "Fido","Rover", "Spike","Gigi"}[x];
return name;
}
public static void main (String [] args) {
Animal a = new Animal();
System.out.println(a.name);
Animal b = new Animal("Zeus");
System.out.println(b.name);
}
}