【问题标题】:Can a class extend an abstract class and implement an interface at the same time? (java)一个类可以扩展一个抽象类并同时实现一个接口吗? (爪哇)
【发布时间】:2026-01-04 09:30:01
【问题描述】:

例如,如果我有一个类 Foo 和一个抽象类 Bar 和一个接口 Fizz,该类可以在其声明中实现这两者吗?还是应该先在抽象类中实现接口?

因为这个UML图表我问:(!未填充的箭头应该指向抽象类以表明它是从抽象类继承的!)

public class Foo extends Bar implements Fizz {
   ...
}

我的班级声明正确吗?

【问题讨论】:

  • 是的,没错。
  • 您的 UML 仅显示从 FooFizz 的依赖关系。没有别的了。
  • 是的。 Thomas 是对的——您可能指的是实现,而不是 Foo 和 Fizz 之间的依赖关系。
  • 为什么这被否决了?

标签: java uml extends implements


【解决方案1】:

是的,你可以。类声明唯一不能做的就是扩展多个类。

【讨论】:

  • 嗯,这不是你不能做的唯一的事情。来吧,发挥你的想象力! :)
  • @mypetlion 很好,如果你只看扩展类和实现接口,它是(我相信)
  • 你不能这样做implements Fizz extends Bar ;)
  • 你也不能扩展最终类或extends Enum(至少直接)。
  • @user7 true 忘记订单了:P
最近更新 更多