抽象类和接口的区别
抽象类
- 关键字:abstract
- 成员变量:可以定义任意成员变量(包括各种访问级别的类成员变量和实例变量)
- 方法:除了抽象方法外还可以定义任意的方法(包括各种访问级别的类方法和实例方法)
- 使用:抽象类可以被继承(使用 extends关键字)
接口
- 关键字:interface
- 成员变量:只能定义公开的静态常量(默认由 public static final 修饰)
- 方法:只能定义公开且抽象的方法(默认由 public abstract 修饰)
- 使用:接口可以被实现(使用关键字 implements) 和继承