這篇文章主要介紹php類和對象有什么關(guān)系,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)主營開平網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā)公司,開平h5成都微信小程序搭建,開平網(wǎng)站營銷推廣歡迎開平等地區(qū)企業(yè)咨詢面向?qū)ο?Object Oriented,OO)是軟件開發(fā)方法。面向?qū)ο蟮母拍詈蛻?yīng)用已超越了程序設(shè)計和軟件開發(fā),擴展到如數(shù)據(jù)庫系統(tǒng)、交互式界面、應(yīng)用結(jié)構(gòu)、應(yīng)用平臺、分布式系統(tǒng)、網(wǎng)絡(luò)管理結(jié)構(gòu)、CAD技術(shù)、人工智能等領(lǐng)域。下面我們?yōu)榇蠹医榻B一下php中類與對象的關(guān)系。
一、類和對象的關(guān)系
類的實體化結(jié)果是對象,而對象的抽象就是類。在開發(fā)過程中,我們通常都是先抽象(幻想)出一個類,再用該類去創(chuàng)建對象(實現(xiàn)幻想的內(nèi)容)。在程序中,直接使用的是我們(實現(xiàn)幻想)的對象,而不是抽象(幻想)的類。
二、面向?qū)ο蠛兔嫦蜻^程
1、什么是面向過程
面向過程就好比一個人 自己洗衣服、做飯,什么事情都是自己解決
2、什么是面向?qū)ο?/strong>
面向?qū)ο缶褪悄莻€人有了對象,讓對象去洗衣服、做飯。
三、如何抽象一個類
class 類名{ 成員屬性: 姓名、性別、年齡、身高、體重 成員方法: 說話、走路、學(xué)習(xí)、吃飯、開車 }
所有的類都是從成員屬性和成員方法這兩方面去聲明,屬性和方法都是類中的成員,所以屬性又叫做成員屬性,方法又叫做成員方法
1、成員屬性 -->特征
在對象中直接聲明變量就稱為成員屬性,可以在類中聲明多個成員變量,即對象中可以有多個成員屬性
class Person{ var $name; //聲明第一個成員屬性,用于儲存人的名字 var age; //聲明第一個成員屬性,用于儲存人的年齡 var $sex; //聲明第一個成員屬性,用于儲存人的性別 }
2、成員方法 -->功能
class Person{ var $name; //聲明第一個成員屬性,用于儲存人的名字 var $age; //聲明第一個成員屬性,用于儲存人的年齡 var $sex; //聲明第一個成員屬性,用于儲存人的性別 function say(){ //聲明第一個方法 echo '人在說話'; //定義人說話的功能 } function run(){ //聲明第二個方法 echo '人在跑步'; //定義人跑步的功能 } function eat(){ //聲明第三個方法 echo '人在吃飯'; //定義人吃飯的功能 } }
對象就是把相關(guān)的屬性和方法組織在一起。其中成員屬性和成員方法都是可以選的,可以只有成員屬性,也可以只有成員方法,也可以沒有成員。
四、實例化對象
一個類可以聲明多個對象,讓對象去訪問成員屬性和成員方法
class Person{ var $name; //聲明第一個成員屬性,用于儲存人的名字 var $age; //聲明第一個成員屬性,用于儲存人的年齡 var $sex; //聲明第一個成員屬性,用于儲存人的性別 function say(){ //聲明第一個方法 echo '人在說話'; //定義人說話的功能 } function run(){ //聲明第二個方法 echo '人在跑步'; //定義人跑步的功能 } function eat(){ //聲明第三個方法 echo '人在吃飯'; //定義人吃飯的功能 } } // 實例化對象 $sqyy = new Person(); //成員屬性賦值 $sqyy -> name = "伊川"; $sqyy -> sex = "男"; $sqyy -> age = 26; //訪問對象中的成員方法 $sqyy->eat();
五、特殊的對象引用 "$this"
上面的示例中,我們是實例化一個對象之后再給成員屬性賦值和訪問成員方法的。那么 $this也可以在成員方法中使用,代表的是當前的這個對象
成員方法調(diào)用前的對象是誰,$this就代表誰
class Person{ var $name; function info(){ $this ->name = "SQYY"; } }
六、構(gòu)造方法與析構(gòu)方法
1、構(gòu)造方法
構(gòu)造方法是對象創(chuàng)建完成后第一個被對象自動調(diào)用的方法,會初始化這個對象,當使用new關(guān)鍵字實例化對象時會自動觸發(fā)。
<?php class Person{ //下面是聲明人的成員屬性,都是沒有初始值的,在創(chuàng)建對象時,使用構(gòu)造方法賦給初始值 var $name; //定義人的名字 var $sex; //定義人的性別 var $age; //定義人的年齡 function __construct($name="SQYY",$sex="男",$age=1){ $this -> name = $name; //在創(chuàng)建對象時,使用傳入的參數(shù)$name為成員屬性 $this->name賦初值 $this -> sex = $sex; //在創(chuàng)建對象時,使用傳入的參數(shù)$sex為成員屬性 $this->sex賦初值 $this -> age = $age; //在創(chuàng)建對象時,使用傳入的參數(shù)$sex為成員屬性 $this->age賦初值 } //下面聲明人的成員方法 function say(){ echo "我的名字:" .$this ->name. " ,性別:" .$this -> sex ." 年齡" .$this ->age. "。<br>"; } } $person1 = new Person(); //創(chuàng)建對象$person1時會自動執(zhí)行構(gòu)造方法,默認傳參 $person2 = new Person('張三'); //創(chuàng)建對象$person2時會自動執(zhí)行構(gòu)造方法,傳入第一個參數(shù),其他默認傳參 $person3 = new Person('李四','男'); //創(chuàng)建對象$person3時會自動執(zhí)行構(gòu)造方法,傳入前兩個參數(shù),其他默認傳參 $person4 = new Person('王五','女','20'); //創(chuàng)建對象$person4時會自動執(zhí)行構(gòu)造方法,傳入所有參數(shù) $person1 ->say(); $person2 ->say(); $person3 ->say(); $person4 ->say(); ?>
運行結(jié)果
2、析構(gòu)方法
對象在銷毀之前最后一個被對象自動調(diào)用的方法,先創(chuàng)建 傳入變量后銷毀
<?php header('Content-type:text/html;charset=utf-8'); // 定義一個汽車的類 class car{ // 成員屬性 public $name; public $color; //構(gòu)造方法 public function __construct($name,$color){ $this->name = $name; $this->color = $color; echo "你創(chuàng)建了".$this->name.'<br>'; } // 析構(gòu)方法 public function __destruct(){ echo "你銷毀了".$this->name.'<br>'; } } // 實例化對象 $hanma = new car('悍馬','粉色','H2'); $bmw = new car('寶馬','紅色','X7'); $benchi = new car('奔馳','黑色','s600'); // unset($bmw); $bmw = '1111'; ?>
運行結(jié)果
如果我們不引用變量,創(chuàng)建完對象之后就會銷毀。
<?php header('Content-type:text/html;charset=utf-8'); // 定義一個汽車的類 class car{ // 成員屬性 public $name; public $color; //構(gòu)造方法 public function __construct($name,$color){ $this->name = $name; $this->color = $color; echo "你創(chuàng)建了".$this->name.'<br>'; } // 析構(gòu)方法 public function __destruct(){ echo "你銷毀了".$this->name.'<br>'; } } // 實例化對象 new car('悍馬','粉色','H2'); new car('寶馬','紅色','X7'); new car('奔馳','黑色','s600'); ?>
運行結(jié)果
以上是php類和對象有什么關(guān)系的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
文章題目:php類和對象有什么關(guān)系-創(chuàng)新互聯(lián)
本文來源:http://muchs.cn/article2/phioc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、ChatGPT、品牌網(wǎng)站設(shè)計、網(wǎng)站策劃、電子商務(wù)、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容