麻豆成人91精品二区三区,国产91在线播放,加勒比无码专区中文字幕,欧美黑人XXXX高潮猛交

×

php訪問控制的介紹

分類:互聯(lián)網熱點 編輯:互聯(lián)網觀察 瀏覽量:259
2020-07-10 11:21:32

1. 屬性的訪問控制 php中,類的屬性必須被定義為公有(public),受保護(protected),私有(private)三個中的一個。

PHP4中可以用var關鍵詞定義屬性,默認未公有。被定義為公有的類成員可以在任何地方被訪問。被定義為受保護的類成員則可以被其自身以及其子類和父類訪問。被定義為私有的類成員則只能被其定義所在的類訪問。

 對var關鍵詞感興趣的可以看一下http://stackoverflow.com/ques... 2. 方法的訪問控制 同樣,類中的方法也可以被定義為公有(public),受保護(protected),私有(private)三個中的一個。但是如果是公有,方法前的關鍵詞public可以不寫。即不寫關鍵次,默認為公有。

例如: 那么如果把類中的構造函數(shù)私有話了會發(fā)生什么?例如: 很顯然,我們就不能直接用new Demo()來創(chuàng)建實例了,因為創(chuàng)建實例的時候會在外部調用__construct()方法。怎么辦?我們或許可以在類里寫一個靜態(tài)方法來獲取實例對象。這樣就即是在本類中調用__construct()方法,也不用在外部實例化,簡直完美!  

但是話又說回來,我們先把__construct私有化,又千方百計用靜態(tài)方法獲取到實例。這是折騰什么鬼? 其實在在設計模式中會經常使用這樣的方法來控制對象的創(chuàng)建,比如單例模式只允許有一個全局唯一的對象。 如果我們需要在全局中只有一個唯一的對象,上面的代碼還不夠。因為只要有人調用了兩次getInstance(),那么就生成了兩個了。

所以我們再把上面的代碼改一下 以上就是關于php訪問控制的介紹的詳細內容。


聲明:免責聲明:本文內容由互聯(lián)網用戶自發(fā)貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內容,請發(fā)

送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。本站原創(chuàng)內容未經允許不得轉載,或轉載時

需注明出處:新網idc知識百科

免費咨詢獲取折扣

Loading