抽象类与接口——JavaSE基础
抽象类与接口
抽象类
抽象类既包含规范又包含具体实现
-
抽象类可以包含实现的方法 和 未实现的用
abstract
修饰的抽象方法 -
抽象类不可以有实例化(不能使用new实例化),只能通过子类继承,然后对子类进行实例化
-
使用
public abstract class
定义抽象类 -
使用
extends
关键字继承抽象类
接口
接口只包含规范
-
接口只能包含未实现的用
abstract
修饰的抽象方法 -
接口中只能定义不可变的常量,即使试图定义一个变量也是默认加final的常量
-
接口中的定义都是抽象的,即使只写
void method();
,实质上也是public abstract void method();
-
接口不能实例化,接口没有构造方法
-
可以使用接口实现多继承
-
使用
interface
定义接口 -
使用
implements
关键字进行继承一个或多个接口
public interface If{
int AGE = 99; // 看起来定义的是变量,实质上是常量,这一句相当于public static final int AGE = 99;
void method(); // 相当于 public abstract void method();
}