类与其关联元类的关系的命名法是什么?
我们将类与其关联元类的关系称为什么?
我想在以下两行中填空:
- A类是B类的元类。
- B类是A类的____。
在该类的文档中,我正在记录我目前正在编写的元类。我发现自己经常在 python 文档字符串中输入“与此元类关联的类”。有没有一个词可以更简洁地表示这种关系?
我想使用更简洁的命名法的浓缩示例:
def __init__(mcl, what, bases=None, dict=None):
"""
Raises an exception if >> the class associated to this metaclass <<
contains a valid set of configuration decorators.
...
"""
回答
术语“元类”本身已经捕获了您正在寻找的大部分关系。元类并不是什么特别的东西。它只是另一种类型。“魔术”是这种类型的实例也恰好是类型。(什么是类型?它只是一个为对象提供方法的类。)
如果有的话,类是特殊的东西。您可以想象存在元元类:实例是元类的类型,其实例是类。你可以建立一个这样的元元......类的无限层次结构。(实际上,这在 Python 中不存在。根元类type将自身作为自己的元类,而不是其他一些高阶元元类。)因此,类是唯一的,因为它的实例不能同时用作唯一类型类型。
您正在寻找的关系只是“B 类是(元)A 类的一个实例”。
(我在这里所说的一切都不应被视为与jsbueno 的回答相矛盾;我认为这只是一个不同的观点。)