1、abstract class 与 interface有什么区别:
含有abstract 修饰的类即为抽象类,抽象类不能被实例化
抽象类中可以有抽象方法,抽象方法必须在子类实现,如果子类没有完全实现父类的抽象方法,那么子类也必须是abstract修饰
其实抽象类与普通类的区别就在于它不可被实例化和它可以有抽象的方法。
接口可以说是抽象类的一个特例,接口中所有的方法都必须是抽象的,接口中的方法默认为public abstract类型,接口中的成员变量默认为public static final
下面比较一下二者的语法区别:
(1)抽象类内可以有构造方法,接口中不可以有构造方法
(2)抽象类中可以有普通的非抽象方法,而接口中的所有方法都必须是抽象的。