Python中的內置函數__init__()的理解


有點意思,本來我是學習java的。總所周知,java也有構造函數,而python在面向對象的概念中,也有構造函數。它就是 __init__(self) 方法。

其實類似於__init__()這種方法,其實還有很多。類似__del__(self)  ...  __new__(cls,*args,**kwd) 等等。它們被成為 python的常用內置方法。

 

下面開始介紹一下我對 __init__()的理解:

 

class A(object):
    def __init__(self,name): 
        self.name = name
    def getName(self):
        return 'A'+self.name

a = A('hello')
print a.getName()

 當我們執行

a = A('hello')

可以理解為:

a=object.__new__(A)
A.__init__(a,'hello')

也就是說,當我們初始化一個對象的時候,首先執行的不是__init__()方法,而是__new__()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM