python--靜態方法


Python中的靜態方法

1.概念:
靜態方法是類中的函數,不需要實例。靜態方法主要是用來存放邏輯性的代碼,主要是一些邏輯屬於類,但是和類本身沒有交互【不需要創建類的實例對象而是直接使用類名.靜態方法調用】,即在靜態方法中,不會涉及到類中的方法和屬性的操作【在類的方法傳參區間不需要傳入類的實例對象】。可以理解為將靜態方法存在此類的名稱空間中。事實上,在python引入靜態方法之前,通常是在全局名稱空間中創建函數。

2.例子:定義一個關於時間操作的類,其中有一個獲得當前時間的函數。

import time

class TimeTest(object):
  def __init__(self,hour,minute,second):
    self.hour = hour
    self.minute = minute
    self.second = second
  @staticmethod   
def showTime():     return time.strftime("%H:%M:%S", time.localtime()) print TimeTest.showTime() t = TimeTest(2,10,10) nowTime = t.showTime() print nowTime

3.意義:
使用靜態函數,既可以將獲得時間的函數功能與實例解綁,我想獲得當前時間的字符串時,並不一定需要實例化對象,此時更像是一種名稱空間。
我們可以在類外面寫一個簡單的方法來做這些,但是這樣做就擴散了類代碼的關系到類定義的外面,這樣寫就會導致以后代碼維護的困難。


免責聲明!

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



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