据我所知,Python没有显式的内置特性来实现接口。考虑以下情况:
我有一个包含多个类的项目。他们中的一些人使用了一种特殊的方法。这种方法在功能上或逻辑上都与它们都不一致,而且从技术上讲,它不应该出现在那里,更不用说它是同一个方法,在所有这些类中复制并粘贴它绝对是一个糟糕的做法。现在我可以创建一个类,并让所有这些类从中继承,所以他们可以使用这个方法。。。但话说回来,这些类之间没有任何共同点,如果它们有一个共同的超类,那将是愚蠢的。我可以用这个方法创建一个单独的类,将它的实例作为参数传递到任何地方,然后将该方法作为成员函数调用,但这看起来也是一个肮脏的举动,我真的很想用最优雅的方式来做这件事。在
我认为在这里粘贴所有这些代码来强调问题是没有用的,我将使用一个简化的模型,集中于我想要的:class 1():
def class1_specific_method (self):
common_method()
def common_method()
#some code
return
class 2():
def class2_specific_method (self):
common_method()
def common_method()
#some code
return
公共的_方法工作原理完全相同,在这两种情况下都是必需的,但是不能与这些类中的任何一个类结合。通常,如果是Java,我会使用一些静态类,或者只是为这些类实现一个接口。有什么办法让它看起来更干净更符合逻辑吗?在