1.抽象概述:
使用 abstract关键字来修饰 抽象类和抽象方法zuo'yomg防止类被实例化
定义:只给出定义方法而没有方法体
抽象类即使不包含抽象方法也是抽象类,抽象类中可以包含抽象方法也可以不包含
抽象类不能被实例化,必须在子类中实例化
抽象方法 public abstract void demo();
例子:
public final class Demo{
public static void main(String[] args) {
Teacher t = new Teacher();
t.setName("王明");
t.work();
Driver d = new Driver();
d.setName("小陈");
d.work();
}
}
// 定义一个抽象类
abstract class People{
private String name; // 实例变量
// 共有的 setter 和 getter 方法
public void setName(String name){
this.name = name;
}
public String getName(){
return this.name;
}
// 抽象方法
public abstract void work();
}
class Teacher extends People{
// 必须实现该方法
public void work(){
out.println("我的名字叫" + this.getName() + ",我正在讲课,请大家不要东张西望...");
}
}
class Driver extends People{
// 必须实现该方法
public void work(){
out.println("我的名字叫" + this.getName() + ",我正在开车,不能接听电话...");
}
}
运行结果:
我的名字叫王明,我正在讲课,请大家不要东张西望...
我的名字叫小陈,我正在开车,不能接听电话...