python 靜態類?

在java或者c#中都有靜態類的概念,在python中有沒有呢? java

答案是No,python中不存在靜態類,在類中的方法第一個參數必須是self。仔細一想其實python根本就沒有必要有靜態類,py文件中直接寫方法就是靜態類了。 python

以上說法是錯誤的,python中存在靜態類,並有staticmethod和classmethod的區分。但不知道這二者之間有什麼區別:c#

以下示例代碼:code

class Foo:
    @staticmethod
    def bar_staticmethod():
        print 'I am bar'
    @classmethod
    def bar_classmethod(cls):
        print 'I am bar with ' ,cls

Foo.bar_staticmethod()
Foo.bar_classmethod()
相關文章
相關標籤/搜索