温馨提示×

温馨提示×

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

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

Java超类能被继承吗

发布时间:2026-07-25 13:38:10 来源:亿速云 阅读:95 作者:小樊 栏目:编程语言

可以的,Java 中的“超类(父类 / 基类)是可以被继承的”,这是面向对象编程的基本特性之一。

下面分几种常见情况说明:


1️⃣ 普通类作为超类:可以被继承 ✅

class Parent {
    int x = 10;
}

class Child extends Parent {
    void show() {
        System.out.println(x); // 可以访问父类成员
    }
}

Parent 是超类,Child 继承它。


2️⃣ 使用 extends 关键字继承超类

Java 中只能单继承(一个类只能直接继承一个超类):

class A {}
class B extends A {}   // ✅
// class C extends A, B {} ❌ 不允许

3️⃣ final 类不能被继承 ❌

如果超类被 final 修饰,就不能被继承:

final class Parent {}

// class Child extends Parent {} ❌ 编译错误

典型例子:String

public final class String

4️⃣ 抽象类作为超类:可以被继承 ✅(必须被继承才有意义)

abstract class Parent {
    abstract void run();
}

class Child extends Parent {
    void run() {
        System.out.println("Running");
    }
}

✅ 抽象类通常就是用来被继承的。


5️⃣ Object 是所有类的超类 ✅

在 Java 中:

class A {} // 默认 extends Object

Object所有类的根超类,可以被间接继承(但不能再被“显式继承两次”)。


6️⃣ 构造方法不会被继承 ❌

⚠️ 注意:
构造方法不能被继承,但子类构造方法会默认调用父类构造方法

class Parent {
    Parent() {
        System.out.println("Parent");
    }
}

class Child extends Parent {
    Child() {
        // 默认调用 super()
        System.out.println("Child");
    }
}

✅ 总结

情况 是否能被继承
普通类 ✅ 可以
抽象类 ✅ 可以
final ❌ 不可以
Object ✅(所有类默认继承)
构造方法 ❌ 不会被继承

如果你愿意,我也可以帮你区分 继承 vs 实现接口,或者讲 super 关键字的使用

向AI问一下细节

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

AI