1. 程式人生 > 其它 >python之靜態方法類方法、例項方法

python之靜態方法類方法、例項方法

1、例項化方法:

1、 該方法一定有引數,一般引數為self,通過它來傳例項化物件屬性名和屬性,該方法只能由例項化物件呼叫

2、例項化方法是能夠被類物件呼叫的 單純的呼叫會報錯

顯然,程式會報錯,但是我們觀察一下報錯的資訊提示,即:呼叫的方法中沒有給self傳引數,slef就是我們物件的引用。

這個提示告訴了我們,之前在使用例項物件呼叫例項方法的時候,其實是python自動給self引數進行了傳值,而使用Dog.action()的方式,我們只有類物件的引用,缺少例項物件的引用,python不能夠實現自動的傳遞了。

正確的方式

2、類方法:

使用裝飾器進行修飾,即@classmethod,會有引數,第一引數是cls即第一類物件。用來傳遞類屬性和類方法名。例項化物件和類物件都能夠直接呼叫

3、靜態方法:

需要加裝飾器,即@staticmethod,方法名當中沒有任何引數,方法體當中不允許含有類屬性和例項化屬性,呼叫的話例項化物件和類物件都可以