1.type函數和init_subclass_
init_subclass_?
2.元類
類就是用來創建對象的模版,類是由type創造而來的,元類就是創建類的模版,type可以用來創造類,因為type本身就是一個元類,使用元類來創造類,元類之間也有繼承關系,所有的元類都繼承type
對象被定義的時候執行new方法,在執行init方法?
name:是類名,bases:指定的父類,attrs:指定的屬性和方法
?
在類里面call方法是攔截對象被當做函數調用時候的操作,如果吧call方法定義到元類中,攔截的類實例化對象的操作
3.元類的應用
給類都添加一個作者屬性
2.對類名的定義規范做限制
判斷是否大寫字母開頭
屬性改成大寫:
4.限制類實例化時的傳參方式
5.禁止一個類被實例化
6.只允許實例化一個對象