php中靜態方法和靜態屬性的介紹
靜態分為兩個部分:靜態屬性和靜態方法
靜態的東西都是給類用的(包括類常量),非靜態的都是給對象用的
靜態屬性
在定義屬性的時候,使用關鍵字static修飾的屬性稱之為靜態屬性。
靜態方法
使用static關鍵字修飾的方法叫做靜態方法。
能用靜態解決的問題,不用普通方法解決問題(靜態的東西可以直接使用類訪問,不需要通過對象實例化,因此節省了內存空間,提升了效率)。
特別註意:
在寫代碼的過程中,嚴格遵循大小寫規範
嚴格遵循:靜態的內容給類訪問,非靜態的是給對象訪問,不要跨界操作
三、self與$this的區別
1、self代表類,$this代表對象
2、self訪問類內部的常量和靜態屬性和靜態方法,$this訪問對象的屬性和普通方法
3、self必須配合範圍解析操作符(::)才能生效,$this代表對象,對象本來就是一種數據類型,所以$this可以單獨被打印。
4、能用$this的地方,一定可以使用self,但是能使用self的地方不一定可以使用$this
5、非靜態的屬性和方法均用對象($this)訪問,靜態的方法和屬性或常量均用類(self)來訪問
php中靜態方法和靜態屬性的介紹
相關推薦
php中靜態方法和靜態屬性的介紹
靜態屬性 size col 實例 生效 訪問類 都是 靜態 self 靜態分為兩個部分:靜態屬性和靜態方法 靜態的東西都是給類用的(包括類常量),非靜態的都是給對象用的 靜態屬性 在定義屬性的時候,使用關鍵字static修飾的屬性稱之為靜態屬性。 靜態方法 使用sta
Vue2.x源碼學習筆記-Vue靜態方法和靜態屬性整理
temp next 技術 spa delet 結構 又是 靜態 https Vue靜態方法和靜態屬性,其實直接在瀏覽器中可以查看到的,如下 圈起來的是其靜態屬性,但是有的屬性對象中的屬性的值又是函數。未圈起來的則是函數。 其實它來自如下各個目錄下的js文件 // src
靜態類中,靜態方法和靜態變數的執行順序按出現執行
package com.study; public class StaticCode { static { i = 33;// i's value is from 0 to 33 g(); } static int i = 1;
【PHP】靜態方法呼叫非靜態方法和靜態呼叫非靜態方法程式碼解讀
static 關鍵字用來修飾屬性、方法,稱這些屬性、方法為靜態屬性、靜態方法。 在類的靜態方法中是不能直接以$this->test()的方式呼叫非靜態方法的。還有框架中靜態的呼叫非靜態方法是怎麼回事??? 。。。 算了,不知道說啥 具體為啥看程式碼註釋: <?ph
ES6 - 類的靜態方法和靜態屬性
一、靜態方法 類的所有方法都定義在類的prototype屬性上面,所有類中定義的方法都會被例項繼承,如果在類方法前面加上static關鍵字就不會被例項繼承了。 靜態方法是直接通過類名來呼叫。 class Person{ constructor(name="xf",age){ t
C#中的靜態方法和靜態變數的一些總結
方法: static 修飾符的方法為靜態方法,反之則是非靜態方法 靜態成員屬於類所有,非靜態成員屬於類的例項所有,無論類建立了多少例項,類的靜態成員在記憶體中只佔同一塊區域。(所有該類的例項都共享這個類的靜態成員) C#靜態方法屬於類所有,類例項化前即可使用,靜態方法只能訪
類中靜態方法和靜態變數,靜態程式碼塊,構造方法,以及被@PostConstruct修飾的方法執行順序
第一種:當直接呼叫(沒有new物件)靜態方法時候:程式碼塊(靜態變數按照順序)就執行—–方法執行。 第二種建立物件:執行父類靜態程式碼—-執行子類的靜態程式碼—-執行父類構造方法—–執行子類的構造
從JVM記憶體管理的角度談談JAVA類的靜態方法和靜態屬性
JVM的記憶體分為兩部分: stack(棧)是JVM的記憶體指令區。stack管理很簡單,push一定長度位元組的資料或者指令,stack指標壓棧相應的位元組位移; pop一定位元組長度資料或者指令,stack指標彈棧。stack的速度很快,管理很簡單,並且每次操作的資料或
python中類方法和靜態方法區別
開發十年,就只剩下這套架構體系了! >>>
jdk1.8新特性 : 接口中可以有普通方法(非靜態方法)和靜態方法 , 顛覆了之前我的理解 : 接口中只能有共有常量和抽象方法的概念,後面必須要加一句jdk1.7和1..7之前
@override 編譯 sys 接口 blank new style nts highlight 看到jdk某些接口中存在default方法,於是... http://shaomeng95.iteye.com/blog/998820 為什麽接口只能是公有常量? p
Python中私有方法和私有屬性
Python 私有方法 私有屬性 1.私有方法和私有屬性私有方法只能在類內部被調用,不能被對象使用私有屬性只能在類內部使用,不能被對象使用 私有屬性只能在類內部使用,對象不能使用,但是,我們可以通過在類內部定義公有方法對私有屬性進行調用或修改,然後對象在調用這個公有方法使用。###私有屬性和私有方
JAVA基礎(50)---靜態方法和靜態程式碼塊
靜態方法 用static修飾的方法。靜
靜態方法和靜態變數(總結)
1.static方法是類中的一個成員方法,屬於整個類,即使不用建立任何物件也可以直接呼叫! static內部只能出現static變數和其他static方法!而且static方法中還不能使用this....等關鍵字..因為它是屬於整個類! 2.靜態方法效率上要比例項化高,靜態方法的缺點是不自動
JDBC配置檔案的讀取方式-非靜態方法和靜態方法
非靜態方法讀取 public void getConnection2() throws IOException{InputStream is = getClass().getClassLoader().getResourceAsStream("jdbc.properties
static靜態方法和靜態變數用法
static 是定義一個靜態物件或靜態變數,關於static 定義的變數或類方法有什麼特性我們看完本文章的相關例項後就見分曉了。 1.建立物件$object = new Class(),然後使用”->”呼叫:$object->attribute/funct
成員內部類中為什麼不能有靜態方法和屬性
非靜態內部類不能有靜態成員!成員內部類必須先例項化外部類物件然後再例項化成員內部類;非static的內部類,在外部類載入的時候,並不會載入它,所以它裡面不能有靜態變數或者靜態方法。1、static型別的屬性和方法,在類載入的時候就會存在於記憶體中。2、要使用某個類的stati
關於php中靜態方法,靜態屬性的一些淺見
1、靜態方法,靜態屬性被稱作類方法、類屬性,可以在沒有例項化的時候直接使用 類名::屬性名 類名::方法名() 這樣的方式來呼叫。 header("content-type:text/html;charset=utf-8"); class Human{ s
python語言是動態語言、給類新增屬性、方法、靜態方法和類方法、__slots__()、python中的生成器、yield的用法
程式在查詢變數的定義時遵循LEGB規則 LEGB規則: locals-->enclosing function-->globals-->builtins locals當前所在名稱空間的變數 enclosing外部巢狀函式的名稱空間(閉包中常見) globa
php 普通方法和靜態方法
普通 ntc 靜態 urn ade ati 標識符 count() student <?php header(‘Content-Type: text/html; charset=utf-8‘); class Student { public static funct
Java中對域和靜態方法的訪問不具有多態性
ext 轉型 highlight .get 判斷 fin color icm true 1.將方法調用同方法主體關聯起來被稱為 2.編譯期綁定(靜態)是在程序編譯階段就確定了引用對象的類型 3.運行期綁定(動態綁定)是指在執行期間判斷所引用對象的實際類型,根據其實際的類型調