温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样调用java超类

发布时间:2026-09-20 13:11:15 来源:亿速云 阅读:90 作者:小樊 栏目:编程语言

在 Java 中,“调用超类(父类)”通常有以下几种常见场景和写法。我按最常见的情况给你说明:


1. 调用超类的构造方法(最常见)

使用 super(...)

class Animal {
    Animal(String name) {
        System.out.println("Animal: " + name);
    }
}

class Dog extends Animal {
    Dog() {
        super("Dog"); // 调用父类构造方法
    }
}

✅ 注意:

  • super() 必须写在子类构造方法的第一行
  • 如果子类不写,Java 会默认调用 super()(无参构造)

2. 调用超类的普通方法

使用 super.方法名()

class Animal {
    void sound() {
        System.out.println("Animal sound");
    }
}

class Dog extends Animal {
    void sound() {
        super.sound(); // 调用父类方法
        System.out.println("Dog bark");
    }
}

3. 访问超类的成员变量

使用 super.变量名

class Animal {
    String name = "Animal";
}

class Dog extends Animal {
    String name = "Dog";

    void show() {
        System.out.println(super.name); // Animal
        System.out.println(name);       // Dog
    }
}

4. 在继承中“自动”调用超类

即使不写 super,Java 也会:

  • 自动调用父类无参构造方法
  • 子类对象包含父类所有成员
class A {
    A() {
        System.out.println("A");
    }
}

class B extends A {
    B() {
        System.out.println("B");
    }
}

输出:

A
B

5. 常见错误 ❌

super(); // 不在第一行 ❌
super.sound(); // 在 static 方法里 ❌(super 不能用于 static)

总结速记表

目的 写法
调用父类构造 super(...)
调用父类方法 super.method()
访问父类变量 super.field

如果你指的是 “反射调用超类”“抽象类/接口的超类”“泛型超类”,可以告诉我具体场景,我可以给你更针对性的例子。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI