1、抽象类是数据结构和一些抽象行为、具体行为的混合体,而接口是单纯的抽象方法集合(abstract public)2、在实现抽象方法时必须使用override关键字,实现接口不需要任何关键字(虽然它也是抽象方法)如果非要加上,编译器会报错。3、抽象类可以被抽象类继承,从而提供更多的虚方法,接口没有这种特性--他是一种“要么不要,要么全要”的事。4、一个类可以实现更多的接口,但只能实现一个抽象类。