一、抽象类的引入
1-1、封装
问题:javabean越来越多。重复的内容越多——继承
1-2、继承
二、抽象类、抽象方法
一个方法抽取到父类中,不确定方法体——抽象方法
定义了抽象方法的类——抽象类。
在Java中,抽象类是一种特殊的类,它不能被实例化(即不能直接创建对象)。
2-1、定义抽象类
需要使用abstract
关键字来声明一个类。
一个抽象类可以包含抽象方法和非抽象方法。抽象方法是没有方法体的方法,它也必须用abstract
关键字来声明,且必须在子类中实现(除非子类也是抽象类)。
abstract class Animal {
// 抽象方法
abstract void eat();
// 非抽象方法
void sleep() {
System.out.println("Animal is sleeping");
}
}
抽象方法必须以分号
;
结束。
【注意】:
抽象类可以有构造方法! 作用:当创建子类对象时,给属性赋值。(给所有子类共有的属性赋值)