元类

作者: 初幕 | 来源:发表于2018-05-15 20:55 被阅读0次

type()

        type函数即可返回一个对象的类型,也可动态地创建一个新的类。如:

 第一个参数是类名,第二个参数是类的父类,第三个参数是类中的属性——以字典的形式传入。整句话执行结束后,就相当于创建了一个类名为Demo的类。

        type()创建了一个类,并且使用变量d来作为类的引用。

可以看出在Python中,类也是对象,可以动态的创建类。这就是当你使用关键字class时Python在幕后做的事情,而这就是通过元类来实现的。

python中, 类也是一个对象,对象名就是类名,该对象拥有创建对象(类实例)的能力。做为一个变量,可以为它添加新的属性,可以将它赋值给另一个变量,也可以当作参数传递。如:

因为类也是对象,所以可以使用class关键字动态地创建它们。而元类就是创建类的类,它负责创建类,而由类创建类的实例。

 元类就是类的类,它负责创建不同的类,而由不同的类创建不同的类实例。如下:

元类通过__new__方法操作新建成的类,比如添加方法以及添加属性等。

        新建的类通过metaclass指定它对应的元类。

相关文章

  • 3.isa

    isa指向 ->实例isa -> 类|类isa -> 元类 | 元类isa -> 根元类|根元类isa -> 根元...

  • Python元类

    元类 元类就是用来创建类的,元类就是类的类。 实例 关于type()函数的使用戳这里 元类为一个函数 元类为一个类

  • isa 和 superclass

    实例对象的 isa 指向类对象,类对象的 isa 指向元类对象,元类的isa 指向基类的元类对象,基类的元类对象的...

  • 友元类和嵌套类

    友元类 友元函数用于类的扩展接口中,类并非只能拥有友元函数,也可以将类作为友元,该类称为友元类。 友元类的所有方法...

  • 29.Python之面向对象的元类

    Python之面向对象的元类 什么是元类?类的类就是元类,元类创建对象。使用class定义的类,用来产生程序员自己...

  • 面向对象 六

    目录 1.元类 1.1 类创建过程 1.2 元类控制类的创建 1.3 元类控制类的创建过程案例 1.4 自定义元...

  • Python 元类

    什么是元类?元类就是创建类的类,type是最原始的一个元类。(实例是实例化的类,而类是元类的实例)python中一...

  • isa

    NSObject的父类为nil NSObject的isa为根元类 元类的isa都为根元类 根元类的isa为本身 根...

  • iOS开发中方法查找流程图

    实例对象的isa指针指向类对象,类对象的isa指针指向元类,元类的isa指针指向根元类,根元类的isa指针指向自己...

  • 类对象、元类

    任何实例的isa指针指向其类对象,类对象的isa指针指向其元类对象,元类对象的isa指针指向根元类对象,根元类对象...

网友评论

    本文标题:元类

    本文链接:https://www.haomeiwen.com/subject/gagydftx.html