嗨,我写了以下代码:
class Car: def __init__(self): self._create_aliases() def take_to_repair_shop(self): pass def drive_to_the_beach(self): pass def _create_aliases(self): Car.repair = Car.take_to_repair_shop Car.beach = Car.drive_to_the_beach
我希望用户可以选择使用更长,更清晰的名称或更短的名称.我做_create_aliases
了一个实例方法,以便它可以被覆盖.
这有什么问题吗?这是一个很好的设计模式吗?
你不需要这样做__init__
:
class Car: def take_to_repair_shop(self): pass def drive_to_the_beach(self): pass repair = take_to_repair_shop # <--- beach = drive_to_the_beach # <---
例:
>>> car = Car() >>> car.repair() >>> car.take_to_repair_shop() >>>