关于#JAVA#的问题,如何解决?

import java.util.Scanner;
/*题目描述:(super关键字)如果父类的构造函数有参数该怎么办?您能够传值进去吗?

  • 如果不行的话,则没有参数的构造函数的类将不能呗继承。想象一个场景:所有的动物都有name
  • 。所以Animal这个类有个getName()可以返回name实例变量的值。此实例变量是被标记为私有的,
  • 但Hippo这个子类有把getName()继承下来。那么问题来了:Hippo有getName()这个方法但是没有
  • name实例变量。Hippo要靠Animal的部分来维持name实例变量,然后从getName()来返回这个值,但Animal
  • 要如何取得这个值呢?
  • /

/*输入一个动物的名字(String类型)
输出动物的名字
*/

/*测试输入:Buffy
测试输出: Buffy
*/
以下是主程序,请输出子程序
public class MakeHippo {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner in = new Scanner(System.in);
    String str = in.next();
    Hippo h = new Hippo(str);
    System.out.println(h.getName());
}

}

import java.util.Scanner;

class Animal {
    private String name;

    Animal(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}

class Hippo extends Animal {
    Hippo(String name) {
        super(name);
    }

    @Override
    public String getName() {
        return super.getName();
    }
}

public class MakeHippo {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String str = in.next();
        Hippo h = new Hippo(str);
        System.out.println(h.getName());
    }
}