1.语法定义:抽象类钱使用abstract关键字修饰,则该类为抽象类.
2.应用场景a.在某些情况下,某个父类只知道子类应该包含怎样的方法,但是无法准确知道子类是如何实现这些方法.(约束子类必须有哪些方法,并不关注子类如何实现)
3.代码实现
1.创建抽象类
public abstract class TellPhone {
//没有方法体,以分号结束
public abstract void call();//打电话能力
public abstract void message();//发短信功能
}
2.继承TellPhone创建普通电话类
public class CellPhone extends TellPhone {
@Override //覆盖自动实现抽象类里的方法
public void call() {
System.out.println("打电话");
}
@Override
public void message() {
System.out.println("发短信");
}
}
3.继承TellPhone创建智能手机类public class SmartPhone extends TellPhone {
@Override
public void call() {
// TODO Auto-generated method stub
System.out.println("语音打电话");
}
@Override
public void message() {
// TODO Auto-generated method stub
System.out.println("语音发短信");
}
}
4.实现测试:
public class JavaTest {
public static void main(String[] args) {
//父类的引用指向子类类对象
TellPhone tel=new CellPhone();
tel.call();
tel.message();
//父类的引用指向子类的对象
TellPhone tel1=new SmartPhone();
tel1.call();
tel1.message();
}
}
运行结果:
打电话
发短信
语音打电话
语音发短信
Java 基础抽象类
最新推荐文章于 2024-07-02 04:52:52 发布