1.type函数和init_subclass_
init_subclass_
2.元类
类就是用来创建对象的模版,类是由type创造而来的,元类就是创建类的模版,type可以用来创造类,因为type本身就是一个元类,使用元类来创造类,元类之间也有继承关系,所有的元类都继承type
对象被定义的时候执行new方法,在执行init方法
name:是类名,bases:指定的父类,attrs:指定的属性和方法
在类里面call方法是拦截对象被当做函数调用时候的操作,如果吧call方法定义到元类中,拦截的类实例化对象的操作
3.元类的应用
给类都添加一个作者属性
2.对类名的定义规范做限制
判断是否大写字母开头
属性改成大写:
4.限制类实例化时的传参方式
5.禁止一个类被实例化
6.只允许实例化一个对象