python __new__

1.__new__的做用是什麼?

依照Python官方文檔的說法,__new__方法主要是當你繼承一些不可變的class時(好比int, str, tuple), 提供給你一個自定義這些類的實例化過程的途徑。還有就是實現自定義的metaclass。html

1)在內存中爲對象分配空間python

2)返回對象的引用。(即對象的內存地址)spa

 

2. __new__何時被執行

 python中定義的類在建立實例對象的時候,會自動執行__init__()方法,可是在執行__init__()方法以前,會執行__new__()方法,htm

python解釋器在得到引用的時候會將其傳遞給__init__()方法中的self。對象

 

3.看個例子

 這篇博客的例子對比性很好blog

__new__方法主要是當你繼承一些不可變的class時(好比int, str, tuple), 提供給你一個自定義這些類的實例化過程的途徑繼承

 

 

參考內存

https://www.cnblogs.com/traditional/p/8395439.html文檔

https://www.cnblogs.com/34fj/p/6358702.html博客

相關文章
相關標籤/搜索