元类是怎么创建一个类的?
|
在这个例子中,我们定义了 int、str、function、class,然后分别调用了它们的__class__ 方法,这个 __class__ 方法可以返回实例是如何创建出来的。 从方法返回的结果我们可以看到:
除了这些之外,我们在开发中使用到的例如 list、dict 也类似,你可以测试观察一下结果。 现在我们已经得知,创建这些实例的类是 int、str、function、class,那进一步思考一下,这些类又是怎么创建出来的呢? 同样地,我们也调用这些类的 __class__ 方法,观察结果: 是不是很有意思? 在这里,你也可以感受一下这句话的含义:Python 中一切皆对象! 无论是普通类型、方法、实例,还是类,都可以统一看作对象,它们的起源就是元类。 其实,在 Python 中,使用 type 方法,我们可就以创建出一个类,type 方法的语法如下: 过 type 方法创建的类,和我们自己定义一个类,在使用上没有任何区别。 其实,除了使用 type 方法创建一个类之外,我们还可以使用类属性 __metaclass__ 创建一个类,这就是下面要讲的「自定义元类」。 自定义元类
我们可以使用类属性 __metaclass__ 把一个类的创建过程,转交给其它地方,可以像下面这样写: (编辑:阜阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |



