10.元类

作者: 芝麻酱的简书 | 来源:发表于2018-08-21 18:21 被阅读7次

元类的对象是类
type是python的内建元类

def __init__(self, name):
    self.name = name

# 创建一个类
# param1 类名, param2 父类 ,代表是元组 param3 属性
Foo = type("Foo",(object,), {"name":"bill", "__init__":__init__})

print(Foo.__dict__)

自定义元类:
class MyType(type):
    def __init__(self,a,b,c):
        print('元类的构造函数执行')
    def __call__(self, *args, **kwargs):
        obj=object.__new__(self)
        self.__init__(obj,*args,**kwargs)
        return obj


class Foo(metaclass=MyType):
    def __init__(self,name):
        self.name=name
        
        
f1=Foo('alex')

相关文章

  • 10.元类

    元类的对象是类type是python的内建元类 自定义元类:

  • 3.isa

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

  • 10.数据类

    1.对应java中的javabean,主动生成hashcode,toString,copy等方法2.主构造器里面有...

  • 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为本身 根...

网友评论

      本文标题:10.元类

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