一、 abstract 关键字,表示抽象的意思
1、可以使用abstract
来修饰一个类或者方法;
2、用abstract
修饰的类表示这个类是一个抽象类
,抽象类不能被实例化;
3、用abstract
修饰的方法表示这个方法是一个抽象方法
-
抽象方法只有方法声明,没有实现,也就是不能有
{}
; -
抽象类里面并非一定需要抽象方法,但是没有抽象方法,抽象类就没有存在的必要;
-
抽象方法一定要放在抽象类中,否则编译报错;
3、在以下任一条件成立时,类必须定义成抽象类
-
类中有至少一个抽象方法;
-
类继承了父类中的抽象方法,但是至少有一个抽象方法没有实现;
-
类实现了某个接口,但没有全部实现接口中的方法;
4、我们定义一个抽象类的时候,其名字前面一般加上Abstract
,这样方便使用代码的人,一眼就知道这是一个抽象类,比如 AbstractPerson.java
;
二、代码实战
代码的详细解读,可以参考视频教程
AbstractPerson.java
/**
* User: 祁大聪
*/
public abstract class AbstractPerson {//抽象类
public void getAge(){
}
public abstract void getName();//抽象方法
}
子类:Girl.java
/**
* User: 祁大聪
*/
public class Girl extends AbstractPerson{
//实现父类中的抽象方法
public void getName(){
}
}
子类:Boy.java
/**
* User: 祁大聪
*/
public abstract class Boy extends AbstractPerson{
//如果不实现父类的抽象方法,那么这个类必须是抽象类
}