学学看看 发表于 2018-11-26 18:58:05

幽梦三影 发表于 2018-11-27 07:57:13

这个有点难,涉及到抽象基类,平常也几乎用不到

喜欢吃菠菜 发表于 2018-11-27 08:38:45

抽象类就是不能被实例化的类,只能被继承,在继承类中实现抽象类的抽象方法。
比如:
你定义一个:

from abc import ABC,abstractmethod
class A(ABC):
        @abstractmethod
        def do_a(self):
                pass

这个A就是抽象类
你不能
a=A()
否则就会出现错误:                                                          
Traceback (most recent call last):
File "<pyshell#167>", line 1, in <module>
    a=A()
TypeError: Can't instantiate abstract class A with abstract methods do_a
你只能这样:
class B(A):
        def do_a(self):
                return 1+2
记住一定要实现基类A的抽象方法,否则会出错。

alkzerp 发表于 2025-6-25 23:44:17

我爱小甲鱼
页: [1]
查看完整版本: 谁能给讲讲这个抽象方法这个概念?