怎樣聲明類的一個靜態成員static
作者:佚名 時間:2012-02-09 分享到:
聲明一個靜態成員,只需要在方法前面或者字段前面加上關鍵字static即可,一個類的靜態成員會被這個類所有的實例化對象共享,任何一個實例化對象對靜態成員的修改都會反應到靜態成員中,根據這個性質,可以把靜態成員得一個成員變量.靜態聲明必須在可見性聲明之后,為了兼容php4,如果沒有可見性聲明,那么成員和方法將被當作已經聲明為public.
類的靜態成員與一般的類成員不同,靜態成員與實例化對象無關,只與類有關,它們用來實現類要封裝的功能和數據,但不包括特定對象的功能和數據,靜態成員包括靜態方法和靜態屬性.
靜態屬性是包含在類中要封閉的數據,可以由所有類的實例化對象共享,實際上,除了屬于一個固定類并限制訪問方式外,類的靜態屬性非常類似于函數的全局變量.靜態屬性不能通過箭頭操作符->訪問.
靜態方法則實現類需要封裝的功能.與特定的對象無關.靜態方法非常類似于全局函數,靜態方法可以完全訪問類的屬性,也可以由對象的實例來訪問,不論訪問的限定語是什么關鍵字.由于靜態方法可以調用非對象實例.故偽變量this不可以在聲明為靜態的方法中使用.事實上static方法的調用形式在編譯時被確定.當使用必須要聲明的類名時,方法是完全標識和無繼承規則的應用,既方法被完全確認,而且沒有使用繼承規則.