PHP中怎么對(duì)類進(jìn)行封裝,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。
成都一家集口碑和實(shí)力的網(wǎng)站建設(shè)服務(wù)商,擁有專業(yè)的企業(yè)建站團(tuán)隊(duì)和靠譜的建站技術(shù),十余年企業(yè)及個(gè)人網(wǎng)站建設(shè)經(jīng)驗(yàn) ,為成都1000+客戶提供網(wǎng)頁設(shè)計(jì)制作,網(wǎng)站開發(fā),企業(yè)網(wǎng)站制作建設(shè)等服務(wù),包括成都營(yíng)銷型網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),同時(shí)也為不同行業(yè)的客戶提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作的服務(wù),包括成都電商型網(wǎng)站制作建設(shè),裝修行業(yè)網(wǎng)站制作建設(shè),傳統(tǒng)機(jī)械行業(yè)網(wǎng)站建設(shè),傳統(tǒng)農(nóng)業(yè)行業(yè)網(wǎng)站制作建設(shè)。在成都做網(wǎng)站,選網(wǎng)站制作建設(shè)服務(wù)商就選成都創(chuàng)新互聯(lián)公司。
public:方法或者屬性在任何作用域都可以訪問到,而且這是默認(rèn)的,如果沒有為一個(gè)屬性或方法指定訪問修飾符,它將是public。
protected:方法或者屬性只能從類或者繼承類的一個(gè)成員中訪問到。
private:方法或者屬性只能從類的一個(gè)成員中訪問到,而且無法從繼承類的成員中訪問到。經(jīng)過private標(biāo)記的方法或者屬性可以在繼承類中重新定義。每一個(gè)類只能看到它自己定義的私有方法。
這三個(gè)修飾符從作用范圍上來講應(yīng)該像這樣從大到小排序:
public→protected→private之所以說是在作用范圍上是因?yàn)轭惛覀冎暗暮瘮?shù)一樣,把一些屬性和方法進(jìn)行了PHP類的封裝。這個(gè)封裝就決定了數(shù)據(jù)的“可見性”了,這樣我們?cè)陬惖耐饷娌荒軌螂S意修改所定義的屬性和方法而只能夠進(jìn)行調(diào)用,這就是封裝的好處,同時(shí)也提高了安全性。為了說明這幾個(gè)修飾符的作用,請(qǐng)看如下代碼:
< ?php class myClass{ public $public="Public"; protected $protected="Protected"; private $private="Private"; function say_Hello(){ //我現(xiàn)在什么也不做,等下再告訴你 } } $obj=new myClass(); echo $obj->public; //echo $obj->protected; //echo $obj->private; ?> < ?php class myClass{ public $public="Public"; protected $protected="Protected"; private $private="Private"; function say_Hello(){ //我現(xiàn)在什么也不做,等下再告訴你 } } $obj=new myClass(); echo $obj->public; //echo $obj->protected; //echo $obj->private; ?>
通過運(yùn)行以上示例我們得到一個(gè)“Public”,但當(dāng)你把//echo $obj->private;的注釋去掉時(shí),你會(huì)得到一下如下的錯(cuò)誤:Fatal error: Cannot access protected property myClass::$protected in E:\apache\htdocs\example\file.php on line 13。
可以看到我們不能隨意去訪問類的屬性定義,也就是我們不能去修改PHP類的封裝中已經(jīng)定義的一些操作,這就是可見性了。我們?cè)凇巴饷妗笔遣恢肋@個(gè)類中到底有那些成員,因?yàn)檫@些成員對(duì)于其他的類可能是不可見的。
當(dāng)然如果我們一定要訪問或者修改定義為“私有”的屬性時(shí),也可以使用PHP所提供的系統(tǒng)方法:_get()和_set()。關(guān)于這個(gè)在以后再來了解,因?yàn)楝F(xiàn)在我對(duì)此也只是有個(gè)了解啦。
關(guān)于PHP中怎么對(duì)類進(jìn)行封裝問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
分享文章:PHP中怎么對(duì)類進(jìn)行封裝
瀏覽路徑:http://vcdvsql.cn/article12/gjohgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、自適應(yīng)網(wǎng)站、網(wǎng)站改版、用戶體驗(yàn)、動(dòng)態(tài)網(wǎng)站、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)