不同点:

抽象类:
1、抽象类中可以有构造器、
2、可以有抽象方法和具体方法
3、抽象类中的成员可以是private,默认,protected,public
4、抽象类中可以定义成员变量
5、有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法
6、抽象类中可以包含静态方法
7、一个类只能继承一个抽象类
接口:
1、就口中不能定义构造器
2、全部都是抽象方法
3、接口中的成员变量都是public
4、接口中定义的成员变量实际上是常量
5、接口中不能有静态方法
6、一个类可以实现多个接口

相同点:

1、都不能够实例化
2、可以将抽象类和接口类型作为引用类型
3、一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类必须要声明为抽象类