抽象类可以包含成员变量,而接口中的成员变量必须是静态常量。类可以继承一个抽象类,并实现多个接口,但只能继承一个类。抽象类可以有构造方法,而接口不能有构造方法。抽象类中的方法可以有具体实现,而接口中的方法必须是抽象方法,只能有方法的声明而没有方法的实现。接口中的方法默认是public和abstract的,而抽象类中的方法可以有任意访问修饰符。抽象类比接口更具有灵活性,可以在不破坏继承体系的情况下向现有类中添加新的方法。
抽象类可以包含成员变量,而接口中的成员变量必须是静态常量。类可以继承一个抽象类,并实现多个接口,但只能继承一个类。抽象类可以有构造方法,而接口不能有构造方法。抽象类中的方法可以有具体实现,而接口中的方法必须是抽象方法,只能有方法的声明而没有方法的实现。接口中的方法默认是public和abstract的,而抽象类中的方法可以有任意访问修饰符。抽象类比接口更具有灵活性,可以在不破坏继承体系的情况下向现有类中添加新的方法。