一.相同点:
1.接口和抽象类都不能被实例化;
2.接口和抽象类都能包括抽象方法,实现接口或者继承抽象类的子类必须实现抽象方法;
3.都有默认的方法,通过deafult修饰;
二.区别:
1.接口只能包括抽象方法,静态方法和默认方法,不能有非静态方法体;抽象类可以包含抽象方法,静态方法和默认方法,和方法体;
2.接口中的成员变量只能是静态不可变的,并且必须赋值;抽象类中的成员变量可以是各种类型;
3.接口不能包含构造器,抽象方法可以有构造器,用于子类调用构造方法初始化抽象类;
4.一个类只能继承一个抽象类,一个类可以有多个实现类。