在 Java 中,“超类方法”通常指的是定义在父类(superclass)中的方法。下面从概念、作用、使用方式几个方面来解释。
class Animal { // 超类
}
class Dog extends Animal { // 子类
}
这里:
Animal 是 Dog 的超类Dog 是 Animal 的子类超类方法就是定义在超类中的方法,可以被子类:
class Animal {
public void eat() {
System.out.println("动物在吃东西");
}
}
class Dog extends Animal {
}
此时:
eat() 就是 超类方法Dog 自动拥有 eat() 方法Dog dog = new Dog();
dog.eat(); // 输出:动物在吃东西
class Dog extends Animal {
}
子类直接使用超类的方法。
class Dog extends Animal {
@Override
public void eat() {
System.out.println("狗在吃骨头");
}
}
super 调用超类方法如果子类重写了方法,但仍想使用超类的方法:
class Dog extends Animal {
@Override
public void eat() {
super.eat(); // 调用超类方法
System.out.println("狗在吃骨头");
}
}
输出:
动物在吃东西
狗在吃骨头
✅ super.方法名() 用来显式调用超类方法
构造子类对象时,超类构造方法会先执行:
class Animal {
public Animal() {
System.out.println("Animal 构造方法");
}
}
class Dog extends Animal {
public Dog() {
super(); // 可省略
System.out.println("Dog 构造方法");
}
}
❌ super 不是引用对象本身
super 只是访问超类成员的语法❌ 静态方法不能被重写
Java 超类方法就是定义在父类中的方法,子类可以继承、重写或通过
super调用它。
如果你愿意,我也可以结合 Object 类方法(如 toString、equals) 或 抽象超类方法 再详细讲一讲。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。