課程
/后端開發(fā)
/PHP
/PHP進(jìn)階篇
我看不懂self::$_object = new Car();
新建一個對象,賦值給一個靜態(tài)變量?
2017-01-23
源自:PHP進(jìn)階篇 2-7
正在回答
個人理解,靜態(tài)變量也是變量,與動態(tài)變量的作用一樣,存儲信息等,當(dāng)然也有自己的特性,比如,在類中,靜態(tài)的成員,可以在類未實例化之前就能使用,也就是說可以使用類名調(diào)用。結(jié)合單例設(shè)計模式,為了不讓用戶直接實例化對象,需要將構(gòu)造函數(shù)隱藏,但是,我們還是需要能夠創(chuàng)建對象,這個時候就需要提供一個函數(shù),這個函數(shù)不用對象也能調(diào)用, 也就是說能用類名調(diào)用, 我們知道靜態(tài)函數(shù)是不能訪問非靜態(tài)成員的, 那么就需要一個靜態(tài)變量保存這個類的實例,如果這個值是空,就實例化一個對象并賦值給他,否則直接返回該值,保證在運行期間此類只有一個對象存在。大神勿噴。
懷中貓 提問者
_pkm_ 回復(fù) 懷中貓 提問者
舉報
輕松學(xué)習(xí)PHP中級課程,進(jìn)行全面了解,用PHP快速開發(fā)網(wǎng)站程序
1 回答關(guān)于類的構(gòu)造函數(shù)定義為私有。
2 回答關(guān)于構(gòu)造函數(shù)的問題
2 回答構(gòu)造函數(shù)與析構(gòu)造函數(shù)
1 回答構(gòu)造函數(shù)和析構(gòu)函數(shù)
3 回答構(gòu)造函數(shù)和折構(gòu)函數(shù)
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-01-23
個人理解,靜態(tài)變量也是變量,與動態(tài)變量的作用一樣,存儲信息等,當(dāng)然也有自己的特性,比如,在類中,靜態(tài)的成員,可以在類未實例化之前就能使用,也就是說可以使用類名調(diào)用。結(jié)合單例設(shè)計模式,為了不讓用戶直接實例化對象,需要將構(gòu)造函數(shù)隱藏,但是,我們還是需要能夠創(chuàng)建對象,這個時候就需要提供一個函數(shù),這個函數(shù)不用對象也能調(diào)用, 也就是說能用類名調(diào)用, 我們知道靜態(tài)函數(shù)是不能訪問非靜態(tài)成員的, 那么就需要一個靜態(tài)變量保存這個類的實例,如果這個值是空,就實例化一個對象并賦值給他,否則直接返回該值,保證在運行期間此類只有一個對象存在。大神勿噴。