我使用Python進行編碼,但問題似乎與編程語言無關。OOP:依賴於類 - 子類合同中的受保護屬性
我有一個代表一些系統檢查類:
class Check:
@abstractmethod
def run()
""" You have to define your own run(). As a result, it must set self._ok. """
...
@property
def is_ok():
return self._is_ok
然後我們有一組由子類檢查類的檢查,他們正在以下列方式(簡體)使用:
class Checker:
checks = [check1, check2...]
def __call__(self):
for check in self.checks:
if not check.is_ok:
alarm()
現在的問題是:是否要求子類設置一些受保護的對象屬性?
這可能更適合(也可能已經回答)程序員.stackexchange.com – jonrsharpe 2014-11-05 11:20:25