上传者: fsolsh
|
上传时间: 2022-02-17 11:54:29
|
文件大小: 144KB
|
文件类型: -
结论:abstract class和Interface是JAVA语言中的两种定义抽象类的方式。Interface将abstract的概念作了更进一步的发挥。你可以想像Interface是“纯粹”的
abstract class,只可以包含抽象方法,也包括一些常量的定义,丝毫不带半点实现细节,它只提供接口,可以有数据成员,默认是、同时也必须是static & final型,可以通过Interface name直接访问。Interface可以实现Java的多重继承,而abstract class不能。abstract class和Interface中都可以没有抽象方法,当然,此刻,abstract class和Interface,也就失
去了abstract的抽象意义。
通常我们所讲的abstract class,至少包含了一个抽象方法,这个方法默认是protected型,而Interface也至少定义了一个抽象方法。abstract class中也可以包含已经实现了的方法。
abstract class可以extends另一个abstract class或者implements一个或者多个Interface,而Interface只能extends一个Interface。abstract class可以不去实现任何父类或者Interface定义的抽象方法(但这些抽象方法终归是要被全部实现的);相反的,非abstract class继承abstract class或者implements Interface时,必须显式实现abstract class和Interface中已定义的所有的抽象方法。