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

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

作者: 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 方法。

相关文章

  • 34.5 继承中构造方法访问的特点2020-01-26

    同时super()父类构造方法只有子类构造方法可以调用

  • super关键字

    super关键字用来调用父类属性和方法。子类构造方法必须调用父类的构造方法,如果没有显示调用父类的构造方法,系统默...

  • 继承

    super() 用于调用父类的构造方法 this() 用于调用本类中的构造方法 覆盖 覆盖父类的方法 应保持与...

  • 继承 多态 接口

    类的继承 子类可以在其构造方法中使用super()语句调用父类的构造方法 也可以在子类中使用super关键字调用父...

  • java中构造方法的注意点

    默认的子类的构造方法中会自动调用父类的无参构造方法,如果手动调用有参的父类的构造方法的话,子类就不会在自动调用父类...

  • 5,super

    实例化一个类,会自动调用这个类的父类的构造方法 super调用父类的构造方法通常是有参的构造方法,参数和子类的构造...

  • 多继承以及MRO顺序

    使用父类名称.方法的方式调用父类方法,会导致父类的父类方法被多次调用 如果使用super().方法的方式,,,,类...

  • super

    1.super 存在于父类和子类之间的继承 ,当子类调用构造方法的时候 在类的构造方法默认调用父类的构造方法。在构...

  • Java 构造方法中的多态

    类的实例化顺序是先实例化父类在实例化子类,也就是先调用父类的构造方法,再调用子类的构造方法,如果在构造方法中调用其...

  • JS中call方法遇到的困惑

    简单说一下call方法调用父类构造函数。 在一个子构造函数中,你可以通过调用父构造函数的call方法来实现继承,类...

网友评论

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

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