999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

PHP中Private修飾符與Constructor

2016-07-09 09:11:05溫振宏
數字技術與應用 2016年6期

溫振宏

摘要:在PHP程序設計語言中,public,protected,private是面向對象的三種訪問控制修飾符。其中,修飾符private修飾的類中成員屬性或方法的訪問限制最嚴格,只能在該類的內部訪問。本文詳細地分析了private修飾符及構造器constructor的應用。

關鍵詞:PHP private constructor

中圖分類號:TP393 文獻標識碼:A 文章編號:1007-9416(2016)06-0181-01

Abstract:In PHP programming language, public, protected and private are three kinds of access control modifiers of object-oriented programming. The properties of a class modified by private can visit only inner of the class. Modifiers private and constructor are introduced in detail.

Key Words:PHP private constructor

1 Private 和Constructor介紹

PHP是一種HTML內嵌式的,用于服務器端的腳本語言。PHP因開發周期短,穩定安全,簡單易學,免費開源,良好的跨平臺等特性,成為全球最受歡迎的Web開發語言。PHP是一種面向對象的程序設計語言,面向對象的三大特性分別是封裝、繼承和多態[1]。

封裝,即把客觀事物封裝成類,類中的成員屬性或方法只讓可信的類或對象操作,對不可信的類進行信息隱蔽。對類中的成員屬性或方法能否具有訪問權限是通過訪問控制修飾符來完成的。PHP的訪問控制修飾符有三種,分別是public,protected和private。修飾符public修飾的類中成員的作用范圍可以是類的內部、外部及子類。修飾符protected修飾的類中成員的作用范圍可以是類的內部及子類。修飾符private修飾的類中成員的作用范圍只能是類的內部。因此,private修飾的類中成員訪問限制最嚴格[2]。實際操作中,為了安全起見,我們習慣上會將類中的成員屬性全部用private進行修飾,對類外面的成員實現完全的信息隱蔽。而對類中private修飾的成員屬性的操作是通過構造器來實現的。構造器(也稱構造方法),在PHP中構造方法主要作用是類的初始化,即為類中的成員屬性賦值。它是在類的實例化(即創建對象)時自動調用的一種特殊的方法。

2 Private和Constructor舉例

聲明Person類,類中包含$name,$sex,$age屬性,全部用修飾符private修飾,做到對Person類外部成員完全進行信息隱蔽。對$name,$sex,$age屬性的操作通過構造方法construct()來實現。類中還包含輸出信息的printInfo()方法。

class Person{

private $name;

private $sex;

private $age;

function __construct($name,$sex,$age){

$this->name = $name;

$this->sex = $sex;

$this->age = $age;

}

function printInfo(){

echo $this->name;

echo $this->sex;

echo $this->age;

}

}

在Person類的外面,只需實例化對象傳遞具體的參數就可以為類中private修飾的成員屬性賦值。通過對象調用printInfo()方法就可以輸出信息。代碼如下:

$p1 = new Person(“person1”, “男性”, 25);

$p1->printInfo();

3 Constructor在子類中的使用

針對Person類,聲明子類Student,并讓子類Student繼承Person類。在子類Student中聲明自己的private成員屬性$school,并用構造方法進行子類的實例化。

class Student extends Person{

Private $school;

function __construct($name,$sex,$age,$school){

parent::__construct($name,$sex,$age);

$this->school = $school;

}

function printInfo(){

parent::printInfo();

echo $this->school;

}

}

子類Student無法訪問父類Person中的private修飾的屬性$name,$sex,$age。但可以在子類的構造方法中用parent::關鍵字訪問父類Person中的構造方法實現子類成員屬性$name,$sex,$age的初始化。同理,子類Student中的printInfo()方法也是通過parent::關鍵字實現訪問父類Person中的printInfo()方法,進而輸出子類的全部信息。代碼如下:

$student1 = new Student(“student1”,”男性”,20,”shool1”);

$student1->printInfo();

以上分析表明,private修飾符主要用于類的封裝,讓類中private修飾的成員對類外部成員完全進行信息隱蔽。而對類中private修飾的成員屬性可以通過構造方法進行賦值操作。如果子類中的構造方法或普通方法對父類的構造方法或普通方法進行了重寫,可以通過parent關鍵字訪問父類的構造方法或普通方法。

參考文獻

[1]高洛峰.LAMP兄弟連.細說PHP2[M].電子工業出版社,2012.10.

[2]何俊斌,王彩.從零開始學PHP第2版[M].電子工業出版社,2014.10.

主站蜘蛛池模板: 亚洲人网站| 亚洲视频影院| 男人天堂伊人网| 99精品在线看| 91久久偷偷做嫩草影院| 中文字幕在线播放不卡| 国产麻豆91网在线看| 91成人在线观看视频| 77777亚洲午夜久久多人| 91视频99| 五月婷婷综合色| 免费一级大毛片a一观看不卡| 8090成人午夜精品| 亚洲日韩精品综合在线一区二区| 国产91在线|日本| 97se亚洲| 香蕉网久久| 中文毛片无遮挡播放免费| 久久精品国产999大香线焦| 久久黄色影院| 91精品啪在线观看国产| 欧美另类第一页| 在线精品自拍| 香蕉综合在线视频91| 日韩二区三区| 青草午夜精品视频在线观看| 色窝窝免费一区二区三区| 亚洲中文无码h在线观看 | 国产在线一区视频| 国产一区成人| 国产浮力第一页永久地址| 国产在线第二页| 91亚洲免费视频| 91国内外精品自在线播放| 综合亚洲网| 亚洲日韩AV无码一区二区三区人| 99r在线精品视频在线播放 | 亚洲精品在线影院| 91久久国产综合精品| 萌白酱国产一区二区| 国产午夜一级毛片| 中文字幕在线日韩91| 国产伦片中文免费观看| 久久99热66这里只有精品一| 综合色在线| 国产精品久久久久久久伊一| 天堂亚洲网| 日韩精品一区二区三区大桥未久| 国内熟女少妇一线天| 88国产经典欧美一区二区三区| 国产精品99久久久久久董美香| 亚洲成肉网| 一本色道久久88| 亚洲男人在线| 精品撒尿视频一区二区三区| 亚洲愉拍一区二区精品| 网友自拍视频精品区| 亚洲系列中文字幕一区二区| 91精品综合| 成人午夜福利视频| 日本三区视频| 亚洲国产日韩在线成人蜜芽| 欧美天天干| 四虎综合网| 九色视频线上播放| 日本手机在线视频| 欧美午夜久久| 99一级毛片| 无码福利视频| 99精品视频在线观看免费播放| 国产不卡在线看| 亚洲精品va| 国产精鲁鲁网在线视频| 亚洲精品国产乱码不卡| 一级毛片在线播放| 久久天天躁夜夜躁狠狠| 国产精品私拍在线爆乳| 欧美v在线| 亚洲毛片一级带毛片基地| 亚洲h视频在线| 国产成人精品一区二区秒拍1o| 狠狠操夜夜爽|