抽象类:
1、抽象类中可以有抽象方法也可以没有抽象方法,即抽象类中包括普通方法和抽象方法。
2、如果抽象类的子类不是抽象类,则需要对其父类的抽象方法进行重写覆盖。
3、抽象类不能被实例化,但有构造方法。
4、抽象方法只有声明,没有方法体。
5、如果子类要调用父类的构造方法,则在子类的构造方法中用super()调用。
接口:
1、一个类可实现多个接口,接口源于抽象类,是抽象类的变体。
2、接口中的方法都是抽象方法,定义的数据成员都是静态的固定常量(static final)。
3、接口中没有构造方法,一个实现接口的类必须重写接口的方法。
4、接口可作为引用数据类型使用,所产生的对象只能调用接口的方法和数据成员,而不能调用实现接口的类中的另外的方法。
5、接口中的所有变量和方法都是用public修饰的。