在php中,static方法指的是「靜態方法」;透過static關鍵字修飾的成員屬性和成員方法稱為靜態屬性和靜態方法;靜態方法不能存取這個類別中的普通屬性,因為那些屬性屬於一個對象,但可以存取靜態屬性。
PHP static:靜態方法與屬性
在 PHP 中,透過static 關鍵字修飾的成員屬性和成員方法稱為靜態屬性和靜態方法,這裡可以將它們統稱為靜態成員,類別中的靜態成員與類別中的一般成員不同,靜態成員不會被實例化到物件中,也就是說我們不需要實例化一個類,就可以透過類別來存取靜態成員。
【相關教學推薦:《PHP教學》】
在類別中宣告靜態變數很容易,我們可以在類別的普通成員前面加上一個static 關鍵字,就可以將這個普通成員變成靜態成員了。這樣一來,我們可以在不實例化類別的情況下,直接存取類別中的這些靜態成員。存取靜態成員的語法格式如下:
类名::$静态属性 类名::静态方法()
其中::
符號被稱為範圍解析操作符,用於存取靜態成員、靜態方法和常數,還可以用於覆蓋類別中的成員和方法。
如果要在類別內部的成員方法中存取靜態屬性,只要在靜態屬性的名稱前面加上操作符self::即可。
靜態方法
(1)靜態方法不能存取這個類別中的普通屬性,因為那些屬性屬於一個對象,但可以存取靜態屬性;
(2)從目前類別(不是子類別)存取靜態方法或屬性,可以使用self 關鍵字,self 指向目前類,就像$this 指向目前物件一樣;
(3)不能再物件中呼叫靜態方法,靜態方法和屬性又被稱為類別方法和類別屬性,因此不能再物件中使用偽變數$this 。
靜態方法的優點:
(1)在程式碼的任何地方都可以用(假設可以存取該類別);
(2 )類別的每個實例都可以存取類別中定義的靜態屬性,可以利用靜態屬性來設定值,該值可以被類別的所有物件使用;
(3)不需要實例物件來存取靜態屬性或方法。
php靜態方法的好處及不足
1、static方法是類別中的一個成員方法,屬於整個類別,即使不用建立任何物件也可以直接調用!
2、靜態方法效率上要比實例化高,靜態方法的缺點是不自動進行銷毀,而實例化的則可以做銷毀。
3、靜態方法和靜態變數創建後始終使用同一塊內存,而使用實例的方式會創建多個內存。
4、C 中,若類別的方法前面加了static關鍵字,則該方法稱為靜態方法,反而為實例方法。靜態方法為類別所有,可以透過物件來使用,也可以透過類別來使用。但一般提倡透過類別名稱來使用,因為靜態方法只要定義了類,就不必建立類別的實例就可使用。靜態方法只能用類別的靜態成員。
#推薦學習:PHP程式設計從入門到精通
以上是php static方法是指什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!