python中的元类其实没有什么神秘的地方,总结起来就两句话:
1,python中,一切皆对象;(所以类本身也是一种对象,是type对象的的一个实例)
2,在定义类时,如果指定了元类,类的创建就必须由元类来完成,就要执行元类中的 __new__和__init__方法,在元类的__new__方法中创建了新的类对象,在元类的__init__方法中为类对象进行初始化,比如赋予类一些属性等操作!
python中的元类其实没有什么神秘的地方,总结起来就两句话:
1,python中,一切皆对象;(所以类本身也是一种对象,是type对象的的一个实例)
2,在定义类时,如果指定了元类,类的创建就必须由元类来完成,就要执行元类中的 __new__和__init__方法,在元类的__new__方法中创建了新的类对象,在元类的__init__方法中为类对象进行初始化,比如赋予类一些属性等操作!