2025-11-20 06:21:25
首先说啊,一个类能不能继承另一个类要看两个点:第一是这个类有没有被声明成抽象类,如果是抽象类的话子类可以继承它;第二是这个类有没有自己继承自己,这种情况肯定不行。比如你定义个类叫Person,然后Person自己继承Person,这就像自己给自己当爹,肯定报错。
为啥是这个答案呢?根据Java语言规范JLS 8.1.2,每个类最多只能继承一个直接父类,而且不能形成继承环。比如测试数据里,当尝试让类A继承自己时,编译器会提示"Type A cannot be a subclass of itself"。而普通类继承抽象类的情况很常见,比如List继承AbstractList,这种情况下没问题。但要注意啊,像String这种不可变类虽然不是抽象类,但子类继承它也会报错,因为不可变类通常不允许被继承。所以实际开发中要记住这两条铁律,避免踩坑。
本题链接: