抽象类
抽象类
- 抽象类不能被实例化。
- 抽象类应该至少有一个抽象方法,否则它没有任何意义。
- 抽象类中的抽象方法没有方法体。
- 抽象类的子类必须给出父类中的抽象方法的具体实现,除非该子类也是抽象类。
// 命名规范以Abstruct或者Base开头
public abstract class AbstractPlayer {
abstract void play();
public void sleep() {
System.out.println("运动员也要休息而不是挑战极限");
}
}
public class BasketballPlayer extends AbstractPlayer {
@Override
void play() {
System.out.println("我是张伯伦,篮球场上得过 100 分");
}
}
使用场景
- 希望一些通用的功能被多个子类复用的时候
- 在抽象类中定义好 API,然后在子类中扩展实现的时候