父类(抽象类)
//动物类(抽象类)
abstract class Animal{
//抽象方法
public abstract void move();
}
子类(非抽象类)
//(一个非抽象的类继承一个抽象的类,必须将抽象方法重写/覆盖)
class Bird extends Animal{
//需要将从父类中继承过来的抽象方法进行覆盖/重写,或者也可以叫做“实现”
public void move(){}
}
1.不能new这个抽象类,只能靠子类去实现他,约束
2.抽象类中可以写普通的方法
3.抽象方法必须在抽象类中
4.抽象类属于引用数据类型
5.抽象类的定义:在class前加abstract
6.抽象类的定义语法:[修饰符列表] abstract class 类名{
类体;
}
7.抽象类是无法实例化的,无法创建对象的,所以抽象类是用来被子类继承的
8.final和abstract不能联合使用,这两个关键字是对立的
9.抽象类的子类可以是抽象类,也可以是非抽象类
10.抽象类虽然无法实例化,但是抽象类有构造方法,这个构造方法是供子类使用的
11.抽象类关联到一个概念:抽象方法。抽象方法即:没有实现的方法,没有方法体的方法,如:public abstract void doSome();
抽象方法特点是:1.没有方法体,以分号结尾;
2.前面修饰符列表中有abstract关键字。
12.抽象类中不一定有抽象方法,抽象方法必须出现在抽象类中
13.一个非抽象类,继承抽象类,必须将抽象类中的抽象方法进行覆盖/重写/实现