抽象类和接口
抽象类:抽象类的设计就是为了代码复用,父类知道子类要完成某个功能,但是每个子类实现的情况不一样。拥有抽象方法的类必须定义成抽象类,必须用abstract修饰,抽象类是为了被继承
1. 抽象类使用abstract修饰;
2. 抽象类不能实例化,即不可以使用new关键字实例化对象,但是抽象类中可以有构造方法
3. 含有抽象方法(使用abstract修饰的方法)的类是抽象类,必须使用abstract关键字修饰
4. 抽象类可以不含有抽象方法,抽象类中可以含有具体的方法
5. 如果一个子类继承了父类(抽象类),子类必须重写父类的全部抽象方法,否则子类仍然是一个抽象类,无法实例化对象
抽象类中的抽象方法只有方法声明,没有方法体
public abstract class Animal {
public abstract void eat(