第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

關(guān)于構(gòu)造函數(shù)私有方法

http://img1.sycdn.imooc.com//58856e8e0001fd1403740462.jpg

我看不懂self::$_object = new Car();

新建一個(gè)對(duì)象,賦值給一個(gè)靜態(tài)變量?

正在回答

1 回答

個(gè)人理解,靜態(tài)變量也是變量,與動(dòng)態(tài)變量的作用一樣,存儲(chǔ)信息等,當(dāng)然也有自己的特性,比如,在類中,靜態(tài)的成員,可以在類未實(shí)例化之前就能使用,也就是說可以使用類名調(diào)用。結(jié)合單例設(shè)計(jì)模式,為了不讓用戶直接實(shí)例化對(duì)象,需要將構(gòu)造函數(shù)隱藏,但是,我們還是需要能夠創(chuàng)建對(duì)象,這個(gè)時(shí)候就需要提供一個(gè)函數(shù),這個(gè)函數(shù)不用對(duì)象也能調(diào)用, 也就是說能用類名調(diào)用, 我們知道靜態(tài)函數(shù)是不能訪問非靜態(tài)成員的, 那么就需要一個(gè)靜態(tài)變量保存這個(gè)類的實(shí)例,如果這個(gè)值是空,就實(shí)例化一個(gè)對(duì)象并賦值給他,否則直接返回該值,保證在運(yùn)行期間此類只有一個(gè)對(duì)象存在。大神勿噴。


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

懷中貓 提問者

我還有兩個(gè)疑惑,1:我沒見過new Car()賦值給不是對(duì)象的用法,可以再詳細(xì)說明下嗎?賦值給靜態(tài)變量,具體賦了什么值,這個(gè)值和普通建立一個(gè)對(duì)象有什么區(qū)別?2:那在類里面實(shí)例化對(duì)象和外面實(shí)例化對(duì)象有什么區(qū)別呢?應(yīng)該不僅僅是里面可以用靜態(tài)方法吧?按照?qǐng)D里的調(diào)用,結(jié)果應(yīng)該(我猜測(cè))只輸出一次"object create",就是說類里面的new Car()實(shí)際上是不會(huì)調(diào)用構(gòu)造函數(shù)的。
2017-01-23 回復(fù) 有任何疑惑可以回復(fù)我~
#2

_pkm_ 回復(fù) 懷中貓 提問者

php是松類型的語言,不像c++,java,需要 Object obj = new Object();的方式去實(shí)例化對(duì)象,你給變量什么值,他就是什么類型,你可以使用gettype(var_name);查看他的類型,1,所以這里new Car();賦值給變量,那個(gè)變量就是object的類型.2,類外類里面實(shí)例化沒有區(qū)別,如果構(gòu)造函數(shù)是私有的,就只能在類內(nèi)部才能調(diào)用.3,單例模式下,構(gòu)造函數(shù)只會(huì)調(diào)用一次,本例子"object create"只會(huì)輸出一次,這次就是調(diào)用的構(gòu)造函數(shù)。4,只要成員是公有的,不管是不是靜態(tài),內(nèi)部外部都能調(diào)用。
2017-01-23 回復(fù) 有任何疑惑可以回復(fù)我~
#3

懷中貓 提問者

謝謝大神耐心講解!
2017-01-23 回復(fù) 有任何疑惑可以回復(fù)我~
#4

_pkm_ 回復(fù) 懷中貓 提問者

我也是新手。相互學(xué)習(xí),不客氣啦
2017-01-23 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

舉報(bào)

0/150
提交
取消

關(guān)于構(gòu)造函數(shù)私有方法

我要回答 關(guān)注問題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)