抽象类和接口的不同:
一、用法上不同:
1.接口的方法不能用static 进行修饰,而抽象类可以;
2.接口只能包含抽象的方法,而抽象类却可以包含普通的方法
3.接口里面没有构造函数和初始化块,而抽象类可以;
4.接口支持多继承模式(可以继承多个接口),而抽象类只能继承一个;
5.接口修饰类除了public和包级别的其他都不可以,而抽象类可以;
6.接口只能定义常量filed,而抽象类可以定义普通变量;
二、从系统上分析:
1.接口是一种规范,提供给外界需要遵循的规范,调用者者必须要掉用这些接口里面的抽象方法。所以在整体的系统中接口不要轻易改变,否则对整体系统影响很大;
2.抽象类则不一样了,因为抽象类可以作为多个子类共同的父类,体现了模板的模式,使系统的更加灵活,可以进一步去完善;