中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

PHP中子類重載父類的方法(parent::方法名)
來源:易賢網 閱讀:1737 次 日期:2016-08-24 15:12:28
溫馨提示:易賢網小編為您整理了“PHP中子類重載父類的方法(parent::方法名)”,方便廣大網友查閱!

在PHP中不能定義重名的函數,也包括不能再同一個類中定義重名的方法,所以也就沒有方法重載。單在子類中可以定義和父類重名的方法,因為父類的方法已經在子類中存在,這樣在子類中就可以把從父類中繼承過來的方法重寫。

子類中重載父類的方法就是在子類中覆蓋從父類中繼承過來的方法,父類中的方法被子類繼承過來不就可以直接使用嗎?為什么還要重載呢?因為有一些情況我們必須要覆蓋的。例如,有一個“鳥”類,在這個類中定義了鳥的通用方法“飛翔”。將“鴕鳥”類作為它的子類,就會將“飛翔”的方法繼承過來,但只要一調用“鴕鳥”類中的這個“飛翔”的方法,鴕鳥就會飛走。雖然鴕鳥是不會飛的,但其他特性都具有“鳥類”的特性,所以在聲明“鴕鳥”類時還是可以繼承“鳥”類的,但必須在“鴕鳥”類中將“鳥”類中繼承過來的“飛翔”方法改寫,就需要在子類中重載父類中的方法。

在下面的例子中,聲明的Person類中有一個“說話”方法,Student類繼承Person類后可以直接使用“說話”方法。但Person類中的“說話”方法只能說出它自己的成員屬性,而Student類對Person類進行了擴展,多添加了幾個新的成員屬性。代碼如下所示:

<?php

class Person{

protected $name;

protected $sex;

protected $Wage;

function __construct($name="",$sex="男",$age=1){

$this ->name = $name;

$this ->sex = $sex;

$this ->age = $age;

}

//在人類中聲明一個通用的說話方法,介紹一下自己

function say(){

echo "我的名字:".$this-> name.",性別:".$this ->sex.",年齡:".$this ->age."。<br>";

}

}

//聲明一個學生類,使用extends關鍵字擴展(繼承)person類

class Student extends Person {

private $school; //在學生類中聲明一個所在學校school的成員屬性

//覆蓋父類中的構造方法,在參數列表中添加一個學校屬性,用來創建對象并初始化成員屬性

function __construct($name="",$sex="男",$age=1,$school=""){

$this ->name = $name;

$this ->sex = $sex;

$this ->age = $age;

$this ->school = $school;

}

function study(){

echo $this ->name."正在".$this ->school."學習<br>";

}

//定義一個和父類中同名的方法,將父類中的說話方法覆蓋并重寫,多說出所在的學校名稱

function say(){

echo "我的名字:".$this ->name.",性別:".$this ->sex.",年齡:".$this ->age.",在".$this ->school."學校上學<br>";

}

}

$student= new Student("張三","男",20,"edu"); //創建一個學生對象,并傳給一個學校名稱參數

$student -> say(); //調用學生類中覆蓋父類的說話方法

?>

改程序運行后輸出的結果為:

我的名字叫:張三,性別:男,我的年齡是:20,在edu學校上學

在PHP中,提供了在子類重載的方法中調用父類被覆蓋方法的功能。這樣就可以在子類重寫的方法中,繼續使用從父類繼承過來并被覆蓋的方法,然后再按要求多添加一些新功能。調用的格式是使用“parent:方法名”在子類的重載方法中調用父類中被覆蓋的方法。將上例中的代碼修改一下,在子類重寫的構造方法中使用“parent::__construct()”調用父類中被覆蓋的構造方法,再多添加一條對子類中新擴展的成員屬性初始化的代碼。在子類中重寫的say()方法中使用“parent::say()”調用父類中被覆蓋的say()方法,再添加上輸出子類成員屬性的功能。

代碼如下所示:

<?php

class Person{

protected $name;

protected $sex;

protected $Wage;

function __construct($name="",$sex="男",$age=1){

$this ->name = $name;

$this ->sex = $sex;

$this ->age = $age;

}

//在人類中聲明一個通用的說話方法,介紹一下自己

function say(){

echo "我的名字:".$this-> name.",性別:".$this ->sex.",年齡:".$this ->age."。<br>";

}

}

//聲明一個學生類,使用extends關鍵字擴展(繼承)person類

class Student extends Person {

private $school; //在學生類中聲明一個所在學校school的成員屬性

//覆蓋父類中的構造方法,在參數列表中添加一個學校屬性,用來創建對象并初始化成員屬性

function __construct($name="",$sex="男",$age=1,$school=""){

//調用父類中被覆蓋的構造方法,為從父類中集成過來額出行賦初值

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

$this ->school = $school;

}

function study(){

echo $this ->name."正在".$this ->school."學習<br>";

}

//定義一個和父類中同名的方法,將父類中的說話方法覆蓋并重寫,多說出所在的學校名稱

function say(){

parent::say(); //調用父類中被本方法覆蓋掉的方法

echo "在".$this ->school."學校上學<br>";

}

}

$student= new Student("張三","男",20,"edu"); //創建一個學生對象,并傳給一個學校名稱參數

$student -> say(); //調用學生類中覆蓋父類的說話方法

?>

上面的例子輸出的結果和前一個例子是一樣的,但在本例中通過在子類中直接調用父類中被覆蓋的方法要簡便很多。另外,在子類覆蓋父類的方法時一定要注意,在子類中重寫的方法訪問權限一定不能低于父類被覆蓋的方法的訪問權限。例如,如果父類中的訪問權限是protected,那么在子類中重寫的方法的權限就要是protected或public。

以上內容是小編給大家介紹的PHP中子類重載父類的方法【parent::方法名】的相關內容,希望對大家有所幫助

更多信息請查看網絡編程
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網

中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
日韩精品在线网站| 天堂va蜜桃一区二区三区 | 欧美一级片在线看| 美国三级日本三级久久99| 欧美精品一区视频| 99国产欧美久久久精品| 午夜视频在线观看一区二区| 精品噜噜噜噜久久久久久久久试看 | 一本久久精品一区二区| 爽爽淫人综合网网站| 26uuu精品一区二区| 色婷婷久久综合| 国产在线精品一区在线观看麻豆| 亚洲欧美激情在线| 精品剧情在线观看| 欧美日韩性生活| 99久久久精品免费观看国产蜜| 日韩专区欧美专区| 自拍视频在线观看一区二区| 欧美一级片在线观看| 99久久精品情趣| 国产精品2024| 午夜精品福利一区二区蜜股av| 国产欧美中文在线| 欧美一区二区三区四区在线观看| av一区二区三区四区| 国产自产v一区二区三区c| 亚洲第一福利一区| 亚洲天堂成人在线观看| 精品国产sm最大网站免费看| 欧美性猛交xxxxxx富婆| 99久久久精品| 成人久久18免费网站麻豆| 久久精品国产精品青草| 亚洲成人在线网站| 亚洲精品老司机| 亚洲国产精品传媒在线观看| 日韩女优视频免费观看| 8v天堂国产在线一区二区| 在线观看日韩一区| 色综合久久88色综合天天6| 国产.欧美.日韩| 国产大陆a不卡| 国产99久久久精品| 国产成人福利片| 懂色av一区二区三区免费观看| 精品一区二区免费视频| 精品中文字幕一区二区小辣椒| 日韩国产欧美视频| 日本伊人色综合网| 老司机精品视频线观看86| 老司机精品视频线观看86| 精品一区二区在线播放| 国产精品一区免费在线观看| 国产乱子伦视频一区二区三区 | 日本sm残虐另类| 极品少妇xxxx偷拍精品少妇| 美国十次综合导航| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美精品久久久久久久多人混战| 欧美色倩网站大全免费| 欧美美女bb生活片| 精品国产123| 一区二区中文字幕在线| 一级中文字幕一区二区| 丝袜美腿一区二区三区| 九色综合狠狠综合久久| 国产精品自在在线| 91无套直看片红桃| 欧美精品日韩一本| 国产婷婷一区二区| 一区二区三区电影在线播| 日韩高清在线观看| 国产福利一区在线| 欧美视频在线一区二区三区| 欧美一区在线视频| 中文乱码免费一区二区| 亚洲综合999| 国产河南妇女毛片精品久久久| 一本色道亚洲精品aⅴ| 日韩欧美一级二级三级| 日韩理论在线观看| 久久国产精品一区二区| 色综合久久88色综合天天6 | 欧美国产日韩亚洲一区| 一区二区在线电影| 精品一区在线看| 欧美在线视频日韩| 国产精品人人做人人爽人人添| 亚洲国产日韩精品| 成+人+亚洲+综合天堂| 欧美一区二区三区在线观看视频| 中文字幕不卡在线观看| 人人狠狠综合久久亚洲| 91麻豆精东视频| 久久久精品国产免费观看同学| 尤物在线观看一区| 国产成人精品1024| 欧美成va人片在线观看| 亚洲一区二区影院| www.成人网.com| 亚洲精品一区二区三区在线观看| 一区二区三区欧美日| 成人h动漫精品| 久久久九九九九| 精品一二三四在线| 日韩欧美国产wwwww| 亚洲成人先锋电影| 日本韩国欧美在线| 亚洲日本va午夜在线影院| 国产麻豆精品theporn| 欧美一级艳片视频免费观看| 一区二区三区四区在线免费观看 | 亚洲一区二区精品3399| jlzzjlzz国产精品久久| 久久久精品人体av艺术| 国产综合色产在线精品| 精品国产污网站| 蜜桃视频第一区免费观看| 91.com在线观看| 丝袜亚洲另类欧美| 777午夜精品视频在线播放| 五月天国产精品| 在线观看91精品国产麻豆| 亚洲高清不卡在线观看| 欧美日韩三级视频| 天堂成人国产精品一区| 日韩午夜激情电影| 激情深爱一区二区| 久久久亚洲精品一区二区三区| 国产美女视频91| 中文字幕乱码亚洲精品一区| 成人av在线看| 一区二区三区四区不卡在线 | 亚洲私人黄色宅男| 91久久精品日日躁夜夜躁欧美| 亚洲三级在线播放| 欧洲色大大久久| 日本va欧美va精品| 久久久国产精品午夜一区ai换脸| 大胆欧美人体老妇| 亚洲精品视频观看| 91精品婷婷国产综合久久| 狠狠v欧美v日韩v亚洲ⅴ| 中文字幕第一区| 欧美日韩中文另类| 国产精品资源在线看| 亚洲天天做日日做天天谢日日欢| 在线视频一区二区免费| 七七婷婷婷婷精品国产| 国产精品欧美久久久久一区二区| 91视频免费观看| 麻豆精品视频在线观看免费| 国产欧美精品一区二区色综合| 99国产一区二区三精品乱码| 亚洲国产成人av网| 久久精子c满五个校花| 在线观看视频一区二区| 韩国精品主播一区二区在线观看| 中文字幕中文字幕一区| 欧美美女喷水视频| 99国产精品国产精品久久| 日韩电影在线看| 亚洲欧美色一区| 久久综合久久综合亚洲| 欧美在线观看一区| 国产成人免费9x9x人网站视频| 亚洲午夜三级在线| 欧美高清在线一区| 日韩午夜精品电影| 91福利社在线观看| 国产精品亚洲专一区二区三区| 夜夜精品浪潮av一区二区三区| 久久理论电影网| 欧美美女网站色| 一本久久精品一区二区| 国产成人免费视频网站| 美国十次综合导航| 天天影视网天天综合色在线播放| 综合在线观看色| 欧美激情一区二区三区不卡| 日韩一级大片在线| 欧美日韩一区精品| 91福利国产精品| 色综合天天综合网天天狠天天| 国产福利电影一区二区三区| 日韩成人免费看| 亚洲国产精品一区二区久久恐怖片| 中文字幕乱码日本亚洲一区二区| 精品欧美一区二区三区精品久久| 欧美肥妇free| 欧美揉bbbbb揉bbbbb| 色老汉av一区二区三区| 97精品久久久久中文字幕| 成人一二三区视频| 成人一道本在线| 久久国产人妖系列| 美女被吸乳得到大胸91| 亚洲国产一区二区三区| 亚洲综合久久av|