メタクラス

 インスタンスがクラスになるクラスのことです。通常のクラスがそのインスタンスの振る舞いを定義するように、メタクラスはそのインスタンスであるクラスを、そして更にそのクラスのインスタンスの振る舞いを定義します。

 例えば、Pythonにおいてメタクラスは type です。type によって クラスを定義することができます。

 a = type('sample_class', (s_class_1, s_class_2), {'atr_val': 'Atribute1'})

 

上記のように定義されたクラスは、次のようなクラス定義と等価です。

class sample_class(s_class_1, s_class_2):
     atr_val = 'Atribute1'

a = sample_class

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です