抽象类和接口的区别

抽象类使用abstract关键字定义,接口使用interface
抽象类的子类用extends关键字继承抽象类,而接口的实现类使用implement关键字实现接口
抽象类可以有非抽象方法,接口只能是抽象方法,没方法体。
抽象类对成员变量,成员方法,访问控制符无要求,接口中成员变量默认是public static finnal。成员方法是:public abstract
抽象类的子类拓展数量只能为一个抽象类,接口的实现类可以同时实现多个接口。
抽象类中能使用静态代码块,接口中不能用。
抽象类中有非抽象方法,非抽象方法可以有方法体。而接口中都是抽象方法,没方法体,在jdk1.8 之后default和static方法需要有方法体。

你可能感兴趣的:(java,开发语言)