在Python中,可以通过在父类中定义一个方法,并在方法前加上@abstractmethod装饰器来创建一个虚方法。虚方法是一种需要子类实现的抽象方法,父类不能直接调用虚方法。
以下是一个示例:
from abc import ABC, abstractmethodclass MyBaseClass(ABC):@abstractmethoddef my_virtual_method(self):passclass MySubClass(MyBaseClass):def my_virtual_method(self):print("子类实现了虚方法")# 创建子类实例并调用虚方法obj = MySubClass()obj.my_virtual_method()在上述示例中,MyBaseClass是一个包含虚方法的抽象基类。其中的my_virtual_method方法被加上了@abstractmethod装饰器,表示这个方法是一个虚方法,需要在子类中进行具体实现。
MySubClass继承自MyBaseClass,并实现了虚方法my_virtual_method。通过创建MySubClass的实例并调用my_virtual_method,就可以执行子类中的具体实现。
如果在子类中没有实现虚方法,那么在创建子类实例并调用虚方法时,会引发TypeError异常。

