美文网首页
除了构造方法,还有哪些方式可以调用父类的方法?

除了构造方法,还有哪些方式可以调用父类的方法?

作者: JAVA加油 | 来源:发表于2023-06-30 07:55 被阅读0次

    除了构造方法,还有哪些方式可以调用父类的方法?

    除了在子类的构造方法中使用 super 关键字来显式调用父类的构造方法之外,还有以下几种方式可以调用父类的方法:

    使用 super 关键字来调用父类的方法。子类可以使用 super.方法名() 的方式来调用父类中的方法。这种方式适用于子类需要在父类的基础上进行一些扩展的情况。

    将父类的方法声明为 public 或 protected,然后在子类中直接调用。由于 public 和 protected 方法可以被子类继承和访问,因此子类可以直接调用这些方法。

    在父类中定义一个 final 方法,子类无法重写该方法,但是可以直接调用它。由于 final 方法不能被子类重写,因此子类可以安全地调用这些方法。

    例如,假设有如下的父类和子类:

    public class Animal {    protected String name;    public Animal(String name) {        this.name = name;}    public void eat() {        System.out.println(name + "正在吃饭...");}}public class Cat extends Animal {    private int age;    public Cat(String name, int age) {        super(name);        this.age = age;}    public void printInfo() {        eat(); // 调用父类的方法        System.out.println("名字:" + name + ",年龄:" + age);}    public void superEat() {        super.eat(); // 使用super关键字调用父类的方法}}

    在这个示例中,Animal类中定义了一个 public 的 eat() 方法,表示动物正在吃饭。Cat类继承了Animal类并定义了一个age属性。在printInfo()方法中,直接调用了父类的eat()方法,使用 super 关键字调用父类的方法的示例可以在superEat()方法中看到。

    需要注意的是,子类可以继承并访问父类的 public 和 protected 方法,但是不能访问父类的私有(private)方法。私有方法只能被父类自身的方法访问,对于子类来说是不可见的。此外,子类也不能重写父类的 final 方法。

    相关文章

      网友评论

          本文标题:除了构造方法,还有哪些方式可以调用父类的方法?

          本文链接:https://www.haomeiwen.com/subject/tlxgydtx.html