使用abstract关键字声明抽象类,不可实例化,用于定义共用属性和方法。包含抽象方法的类必须声明为抽象类,子类需实现所有抽象方法才能实例化。抽象类可含构造方法,支持继承与多态,有助于构建清晰的类层次结构。
在Java中声明一个抽象类,需要使用 abstract 关键字。抽象类不能被实例化,通常用于作为其他类的父类,定义共用的方法或属性,允许包含抽象方法(没有实现的方法)。
abstract class 类名 {
// 字段
// 构造方法
// 普通方法
// 抽象方法(可选)
}
abstract class Animal {
public abstract void makeSound(); // 抽象方法,没有方法体
public void sleep() {
System.out.println("Animal is sleeping");
}
}
class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Woof!");
}
}
Dog dog = new Dog();
dog.makeSound(); // 输出: Woof!
dog.sleep(); // 输出: Animal is sleeping
可以包含构造方法,用于被子类调用