共同点:1.都不能被实例化。2.都包含抽象方法。3.都支持多态特性。4.都用于实现抽象和解耦。5.子类或实现类都必须实现所有的抽象方法(除非子类也是抽象类)。不同点:1.关键字,抽象类Abstract class 接口interface。2.抽象类包含抽象方法和具体方法,接口在JDK8之前只支持抽象方法,JDK8之后支持default方法和static方法。3.抽象类可以有构造器供子类进行初始化赋值,接口不能有构造器。4.抽象类只能单继承extends,接口支持多实现implements。5.抽象类可以提供公用的字段,接口不行。6.抽象类强调是什么,共性。接口强调能做什么,能力.