抽象类
只约定类所具有的抽象行为,没有具体实现相应的行为
为什么要使用抽象类
有时候子类不需要抽象化
抽象方法时没有方法体的方法
语法格式
abstract class{
常量;
变量
构造();
抽象方法;
//
普通方法;
静态方法();
}
abstract class TrafficToo{
int count ;
//没有具体的行为实现
public abstract void run();
}
class Car extends TrafficToo{
//必须实现抽象父类的所有方法
public void run(){
System.out.println("公路上行驶");
}
}
public class Ex1 {
public static void main(String[] args) {
//抽象类不能有对象
// TrafficToo tool = new TrafficToo();
// tool.run();
Car car = new Car();
car.run();
}
}
抽象类的使用场合
- 不适合创建对象,都是子类的对象
- 为所有的子类提供了模板
抽象类注意
- 抽象类不能创建对象
- 抽象类中可以包含抽象方法,也可以不包含
- 必须子类继承使用
- 普通的子类实现抽象父类,必须实现抽象父类中的所有方法(抽象子类除外)
- 构造器不能是抽象的
- abstract 不能与private,static,final一起联用