我可以在子类中使用超类中的方法而不重写它吗?

Dyl*_*ler 1 java inheritance

我确信这是一个简单的问题,但我不知道答案.首先,是否有可能做到这样的事情?

public class Entity {


public void sayHi() {
        System.out.println(“Hi there!”);
    }
}

public class Person extends Entity {
    public void sayHi() {
        System.out.println(“I’m a person!”);
    }
}
Run Code Online (Sandbox Code Playgroud)

打印出来的地方是:HI那里!我是一个人!这只是一个例子,但这可能吗?如果是这样我该怎么办?因为这样,实际的打印输出将是"我是一个人!".Person中的sayHi()方法是否必须有自己的打印输出,上面写着"你好!" 为了这个工作?

如果您有任何问题留下评论,我会尽我所能.谢谢.

And*_*eas 5

是的,您只需从子类中的方法调用超类中的方法.

请参阅Java™教程 - 使用关键字super.

public class Entity {
    public void sayHi() {
        System.out.println("Hi there!");
    }
}
public class Person extends Entity {
    @Override
    public void sayHi() {
        super.sayHi();
        System.out.println("I’m a person!");
    }
}
Run Code Online (Sandbox Code Playgroud)