package course; /** * @author WanJl * @version 1.0 * @title Demo01 * @description 抽象类 * @create 2026/7/23 */ public class Demo01 { /* 我们在父子类继承的时候,在做子类共性功能抽取的时候,有些方法在父类中并没有具体的实现 员工类 |-开发工程师 |-Java开发工程师 |-前端开发工程师 测试工程师 |-后端测试工程师 |-IOS测试工程师 public class 员工{ public void work(){ } } 每一个子类的工作内容都是不一样的,所以都需要重写父类的方法。 所以, 员工类的work()方法里面的代码就没有作用了。 在Java中,一个没有方法体的方法 ,应该定义为抽象方法, 如果类中包含抽象方法,那么这个类必须是抽象类。 Java定义抽象的 关键字 abstract 抽象类的特点 抽象类和抽象方法必须要使用abstract关键字修饰 定义抽象类: public abstract class 类名{ } 定义抽象方法: public abstract 返回值类型 方法名(参数){ } 抽象类中不一定要有抽象方法,但是有抽象方法的类必须是抽象类 【抽象类不能实例化(创建对象)】 但是 抽象类可以有构造方法 抽象类的子类,有两种选择: 要么重写父类的所有的抽象方法。 要么子类也是抽象类,直接继承父类的抽象方法。 抽象父类 和具体的子类 之间 是继承关系 子类还是属于父类类型的。 */ }