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);
    }
}