1. 场景
a. 某个父类只是知道其子类应该包含怎样的方法,但无法准确知道如何实现
b. 多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的模板,从而避免了子类设计的随意性。
2. 作用
限制子类特征
3. 规则
a. abstract 定义抽象类
b. abstract定义抽象方法,只有声明,不需实现
c. 父类为抽象类
d. 抽象类中可以包含普通的方法,也可以没有抽象方法。但包含抽象方法的一定是抽象类
e. 抽象类不能直接创建,必须用子类去实现抽象类,然后使用其子类的实例,可以定义引用变量
public abstract class Telephone{
public abstract void call();
public abstract void message();
}
public class Cell extends Telephone{
public void call(){
System.out,.println("通过键盘打电话")
}
public void message(){
System.out.print ("通过键盘发短信")
}
}
public class Smart extends Telephone{
public void call(){
System.out.println("通过语音打电话")
}
public void message(){
System.out.println ("通过语音发短信")
}
}