python抽象类中的常见变量?

时间:2017-05-28 18:55:15

标签: python python-3.x abstract-class

我有 abstract_class ,它由 first_concrete_class second_concrete_class 继承。

我需要在 abstract_class 中使用变量 max_height ,其中它对于具体类是通用的,并且可以编辑共享变量。

from abc import ABCMeta, abstractmethod, abstractproperty

class abstract_class:
   __metaclass__ = ABCMeta
   max_height = 0

   @abstractmethod
   def setValue(self, height): pass

max_height 最初设为0.

class first_concrete_class(abstract_class):

   def setValue(self, height): 
      super().max_height = height   # Something like this?

first_concrete_class().setValue(100)应更改 max_height 的abstract_class值中的值,而不仅仅是继承 first_concrete_class max_height 值。

class second_concrete_class(abstract_class):

   def __init__(self): 
       print(super().max_height)   # Something like this?

输出应 100 ,而不是初始 max_height 值为0.

python中有没有办法做到这一点?如果可能,外部源如何访问此变量,因为它无法启动。 (例如: abstract_class max_height

0 个答案:

没有答案