抽象类用abstract修饰,不能实例化,可包含抽象和具体方法;2. 抽象方法无方法体,需子类实现;3. 子类继承后必须重写抽象方法,否则需声明为抽象类。

在Java中,抽象类和抽象方法通过 abstract 关键字来定义,主要用于构建模板类,强制子类实现特定行为。
什么是抽象类
抽象类是不能被实例化的类,通常作为基类供其他类继承。它可能包含抽象方法,也可能包含具体方法(已实现的方法)。使用 abstract class 来定义抽象类:
例如:abstract class Animal {
// 具体方法
void breathe() {
System.out.println("动物在呼吸");
}
// 抽象方法
abstract void makeSound();
}
什么是抽象方法
抽象方法是没有方法体的方法,只声明不实现,必须在抽象类或接口中定义。子类继承抽象类后,必须实现所有抽象方法,除非子类也声明为抽象类。抽象方法的语法格式:
abstract 返回值类型 方法名(参数列表);注意:抽象方法不能用 private、static 或 final 修饰,因为它需要被子类重写。
继承抽象类并实现抽象方法
子类通过 extends 继承抽象类,并使用 @Override 注解实现抽象方法。示例:
立即学习“Java免费学习笔记(深入)”;
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("汪汪汪");
}
}
此时,Dog 类必须实现 makeSound() 方法,否则编译失败。
使用示例
主程序中可以使用多态调用抽象类引用指向子类对象:public class Main {
public static void main(String[] args) {
Animal dog = new Dog(); // 多态
dog.breathe(); // 输出:动物在呼吸
dog.makeSound(); // 输出:汪汪汪
}
}
基本上就这些。只要记住:抽象类用 abstract 修饰,不能 new;抽象方法没花括号,子类必须去实现。










