抽象类
1. 在某些情况下,某个父类只知道子类应该包含的方法,但无法知道子类是如何实现的
2. 把多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的模板,从而避免子类设计设计的随意性
作用:
1. 不关注子类的实现,但是约束子类有那些特征
2. abstract 为关键字,有声明,但不实现。抽象类中可以包含普通的方法,也可以没有抽象方法
3. 抽象类不能直接创建,可以定义引用变量
public abstract class Telephone {
public abstract void call();
public abstract void message();
}
public class CellPhone extends Telephone {
@Override
public void call() {
// TODO Auto-generated method stub
System.out.println("键盘打电话");
}
@Override
public void message() {
// TODO Auto-generated method stub
System.out.println("键盘发短信");
}
}
public class SmartPhone extends Telephone {
@Override
public void call() {
// TODO Auto-generated method stub
System.out.println("语音打电话");
}
@Override
public void message() {
// TODO Auto-generated method stub
System.out.println("语音发短信");
}
}
public class Initial {
public static void main(String[] args){
Telephone tel1 = new CellPhone();
tel1.call();
Telephone tel2 = new SmartPhone();
tel2.message();
}
}