深入探讨Java中抽象类与接口的异同

abstract class和Interface是Java中定义抽象类的两种方式。Interface将abstract的概念进一步发挥,是纯粹的抽象类,只包含抽象方法和常量定义,提供接口而不带实现细节。Interface支持Java的多重继承,而abstract class不支持。它们都可以没有抽象方法,但失去了抽象意义。通常情况下,abstract class至少包含一个抽象方法,而Interface至少定义一个抽象方法。abstract class可以包含已实现的方法,可以继承另一个abstract class或implements一个或多个Interface;而Interface只能extends一个Interface。abstract class可以不实现父类或Interface的抽象方法,但最终要全部实现;非abstract class继承abstract class或implements Interface时必须实现已定义的所有抽象方法。

pdf 文件大小:144.09KB