抽象方法 python
时间: 2023-08-25 11:17:35 浏览: 73
在 Python 中,抽象方法可以通过使用抽象基类(Abstract Base Class,简称 ABC)来实现。ABC 是一个包含至少一个抽象方法的类,它不能被直接实例化,而是用作其他类的基类。
要创建一个抽象方法,你需要使用 `abc` 模块并继承 `abc.ABC` 或者 `abc.ABCMeta`。然后,使用 `@abstractmethod` 装饰器来标记方法为抽象方法。子类必须实现这些抽象方法,否则会引发错误。
以下是一个简单示例:
```python
from abc import ABC, abstractmethod
class AbstractClass(ABC):
@abstractmethod
def abstract_method(self):
pass
class ConcreteClass(AbstractClass):
def abstract_method(self):
print("Implemented abstract_method")
# 无法实例化 AbstractClass
# obj = AbstractClass()
# 可以实例化 ConcreteClass,并调用抽象方法
obj = ConcreteClass()
obj.abstract_method()
```
在上面的示例中,`AbstractClass` 是一个包含抽象方法的抽象基类。`ConcreteClass` 是一个具体的子类,它必须实现 `abstract_method` 方法。如果不实现该方法,则会引发错误。
阅读全文