Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 有人能解释一下这里提到的策略元类的目的吗_Python_Python 3.x_Design Patterns_Metaclass - Fatal编程技术网

Python 有人能解释一下这里提到的策略元类的目的吗

Python 有人能解释一下这里提到的策略元类的目的吗,python,python-3.x,design-patterns,metaclass,Python,Python 3.x,Design Patterns,Metaclass,无法将示例链接到标题,因此它是:首先让我们看看战略模式的基本思想。它真正说的是开发一些可以在运行时切换的算法(函数/方法/代码片段) 如果我们使用的是OOP支持的语言(Java、Python),那么在大多数情况下,我们可以使用运行时多态性来实现策略模式。在您的示例中,它还显示了如何以这种方式实现这一点 不必对元类的概念感到困惑。这是一个特定于python的术语,用于定义python的类对象。如果您想更多地了解python中的元类,这是一个很好的答案 在您的示例中,元类的概念与策略模式实现没有太大

无法将示例链接到标题,因此它是:

首先让我们看看战略模式的基本思想。它真正说的是开发一些可以在运行时切换的算法(函数/方法/代码片段)

如果我们使用的是OOP支持的语言(Java、Python),那么在大多数情况下,我们可以使用运行时多态性来实现策略模式。在您的示例中,它还显示了如何以这种方式实现这一点

不必对元类的概念感到困惑。这是一个特定于python的术语,用于定义python的类对象。如果您想更多地了解python中的元类,这是一个很好的答案


在您的示例中,元类的概念与策略模式实现没有太大关系。它只是用来将
策略
类标记为一个抽象类。即使没有那个部分,你也可以开发你的程序。而且它不会对策略模式实现的思想造成任何伤害。

不幸的是,堆栈溢出不是一个教程服务。请回顾,并查看,看看哪些主题可以在这里询问。
策略
不是元类。他们只使用元类将
Strategy
标记为一个抽象类,但这可以毫无问题地删除。