概念說明

靜態方法是一種在類別中定義的方法,它可以在不實例化該類別的情況下被調用。靜態方法可以通過類別本身調用,也可以通過該類別的任何實例調用。在Python中,靜態方法通常使用@staticmethod裝飾器來標識。

與實例方法不同,靜態方法沒有訪問類實例的權限,因此它們不需要對self或其他實例變量進行操作。相反,靜態方法通常被用來完成與類相關但不需要實例的任務,例如輔助函數、工廠函數、解析器等。

程式範例

class MyClass:
    def __init__(self, x):
        self.x = x
    
    @staticmethod
    def static_method(y):
        print("This is a static method.")
        return y + 1

# 使用靜態方法
result = MyClass.static_method(10)
print(result)

在這個例子中,我們定義了一個名為static_method的靜態方法,它的唯一參數是y。在這個靜態方法中,我們只打印了一條消息,然後返回y+1。在類的外部,我們可以通過類名來訪問這個靜態方法。最後,我們調用這個靜態方法,並把返回值打印出來。注意,在調用靜態方法時,不需要實例化MyClass類。