Java抽象类和接口

Sha*_*ire 12 java abstract-class interface class

在采访中我被问到以下问题.我试着回答这个问题,但我想要问题的确切答案.

如果我可以将Abstract类模拟为Interface,为什么java提供了Interface?

这意味着如果在Abstract类中我可以将所有方法标记为抽象,然后抽象类将作为接口工作,那么为什么我需要接口.

任何人都可以简要解释一下.

Boz*_*zho 27

这是一个非常标准的面试问题.答案是:因为您可以实现多个接口,但不能扩展多个抽象类.

JRE的示例:LinkedList既是a List又是a Deque.这些接口定义了类的行为.它们不提供任何实现细节.虽然抽象类可以提供一些.

相关问题:这个这个.后者并不直接相关,但它显示了为什么需要接口,即使在抽象类就足够的情况下也是如此.