例項方法 類方法 靜態方法

2021-10-07 01:13:50 字數 839 閱讀 4130

示例方法:第乙個引數為self,必須例項化之後才能呼叫的方法

類方法:使用@classmethod進行裝飾,第乙個引數為cls,可以被類呼叫,也可以被例項呼叫。

靜態方法:使用@staticmethod進行裝飾,沒有固定的引數,可以被類呼叫,也可以被例項呼叫,一般可以說跟類和例項沒有關係。

classa(

object):

#例項方法

deffoo

(self,x)

:print

("excuting foo(%s,%s)"

%(self,x)

)#類方法

@classmethod

defclass_foo

(cls,x)

:print

("executing class_foo(%s,%s)"

%(cls,x)

)#靜態方法

@staticmethod

defstatic_foo

(x):

print

("excuting static_foo(%s)"

%(x)

)a=a(

)a.foo(

11111

)#excuting foo(<__main__.a object at 0x000001f61bc32390>,11111)

a.class_foo(

22222

)#executing class_foo(,22222)

a.static_foo(

33333

)#excuting static_foo(33333)

例項方法 靜態方法 類方法

首先新建乙個日期date類,屬性為年,月,日,tomorrow 是例項方法,這個最常見,比較簡單,例項方法的第乙個引數是例項物件self 當我們傳入的年月日是2018 6 4這樣的形式,我們就需要先進行字串處理,在這裡使用了元組的拆包 這是最基本的方式,但是這樣寫會有乙個問題,每次傳參都需要進行字串...

類方法,例項方法,靜態方法

python 中的三種方法,有三種類方法,例項方法,靜態方法,這三種方法都在類中,區別在於呼叫的方式不同。例項物件能的呼叫這三種方法,類只能呼叫類方法和靜態方法。class foo object def init self,name self.name name deford func self 定...

靜態方法 類方法 例項方法

靜態方法 類方法 例項方法 靜態方法 作用 靜態方法可以更好的組織 防止 變大後變得比較混亂。特性 靜態方法只是名義上歸類管理,實際上在靜態方法裡訪問不了類或者例項中的任何屬性 類方法 作用 無需例項化直接被類呼叫 特性 類方法只能訪問類變數,不能訪問例項變數 屬性方法 作用 屬性方法把乙個方法變成...