定义

  • 抽象类是一种不能被实例化的类
  • 抽象类可以包含抽象方法(即只有方法签名而没有具体实现的方法)以及非抽象方法。

示例

// 定义一个抽象类Animal
abstract class Animal {
  void makeSound(); // 抽象方法,子类需要实现
  void eat() {
    print('Animal is eating');
  }
}
 
// 定义一个继承自Animal的子类Dog
class Dog extends Animal {
  @override
  void makeSound() {
    print('Dog barks');
  }
}
 
void main() {
  Animal dog = Dog();
  dog.makeSound(); // 输出:Dog barks
  dog.eat(); // 输出:Animal is eating
}