Python——靜態方法、類方法、公有方法、私有方法


1. 實例方法

普通實例方法,第一個參數需要是self,它表示一個具體的實例本身。

2. 靜態方法

靜態方法是類中不需要實例的函數,無self,僅僅是類中的函數。
可以由類實例或類調用。
(1)使用staticmethod()方法聲明靜態方法

class C(object):
      def foo():
          print("calling static method foo()")
      foo=staticmethod(foo)

(2)使用函數裝飾器聲明

class C(object):
      @staticmethod
      def foo():
          print("calling static method foo()")

3. 類方法

類方法將類作為第一個參數傳入,而不是self(實例),第一個參數必須類對象,一般習慣用cls。
可以由類實例或類調用。
(1)使用classmethod()方法聲明類方法

class C(object):
      def foo(cls):
          print("calling class method foo()")
      foo=classmethod(foo)

(2)使用函數裝飾器聲明

class C(object):
      @classmethod
      def foo(cls):
          print("calling class method foo()")

4. 公有方法與私有方法

Python中聲明的方法,默認都是公有的方法,要聲明為私有方法,需要在名稱前面添加"__"。

class C(object):
      # 公有方法
      def foo(self):
          pass
      # 私有方法
      def __private_foo(self):
          pass

私有屬性的聲明也是在名稱前面添加"__"


免責聲明!

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



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