一、抽象
1、简单说明
- 只是声明,并不去实现
- 抽象方法:
public abstract void act();
,没有方法体,直接结束,抽象方法只能存在于抽象类中。 - 抽象类:
public abstract class Test{}
,继承抽象类的子类必须重写父类中的方法(包括抽象方法),否则子类也必须是抽象类。
2、注意事项
(1)可以用于强制要求子类中必须有哪些方法,因为必须重写抽象父类的方法。
(2)抽象类不能实例化其他类的对象。
(3)不过,抽象类中可以有正常的方法,不一定都是抽象方法。
3、测试练习
- 在抽象类中实例化对象报错:
- 在继承了抽象类的普通子类中实例化对象不会报错:
abstract class Test06_Father{
//定义一个抽象类
//final常量
final int height = 180;
//在抽象类中定义抽象方法(抽象方法只能存在于抽象类中)
public abstract void act0();
//在抽象类中定义普通方法
public void act1(){
}
public void act2(){
}
//在抽象类中实例化对象:会报错
// Test06_Father tf = new Test06_Father();
}