Background

Python学习:抽象类(abc)

360
2 分钟阅读

抽象类的概念

在Python中,抽象类是一种不能被实例化的类,它通常包含一个或多个抽象方法。抽象方法是指在基类中声明但没有实现的方法,子类必须实现这些方法才能被实例化。抽象类通常用于定义接口或模板,以确保所有子类都遵循相同的结构。

抽象类的实现

要定义一个抽象类,需要导入abc模块,并使用ABC作为基类,同时使用@abstractmethod装饰器来标记抽象方法。例如:

from abc import ABC, abstractmethod
class Animal(ABC):
@abstractmethod
def make_sound(self):
pass

在上面的例子中,Animal是一个抽象类,包含一个抽象方法make_sound。任何继承自Animal的子类都必须实现make_sound方法。

我们可以通过继承抽象类来创建具体的子类:

class Dog(Animal):
def make_sound(self):
return "Woof!"
class Cat(Animal):
def make_sound(self):
return "Meow!"

在这个例子中,DogCat类都实现了make_sound方法,因此它们可以被实例化。 如果尝试实例化Animal类或未实现所有抽象方法的子类,将会引发TypeError

使用抽象类和抽象方法的目的是为了强制子类提供特定的接口,以确保在类层次结构中的正确实现。这对于建立可靠的类继承关系和约定非常有用。

Python学习:抽象类(abc)
/blog/26022570
作者
发布于
2025/12/29
许可协议
CC BY-NC-SA 4.0