首頁 >後端開發 >php教程 >PHP中的物件導向實踐-基本實作案例

PHP中的物件導向實踐-基本實作案例

易达
易达原創
2020-05-21 17:44:442041瀏覽

PHP中的物件導向實踐-基本實踐

(一)、基本實作

一、類別的概念

PHP中的物件導向實踐-基本實作案例

一、共同點:

#都有相同的屬性

##都有相同的方法

二、不同點:

具體的值是不一樣的

三、總結:他們都是一類的物件

說到類,現在來說說類別的概念

1)   類別定義

-我們說物以類聚,人以群分,把具有相似特性的物件歸類到一個類別中

所以我們去看物件的時候,試著去對比他們的屬性和方法,如果他們的屬性和方法都很相似,我們就可以把他們歸到一類

 -類別定義了這些相似的物件都擁有相同的屬性和方法

範例:一個NBA球員就是一個類別的定義,它規定了只要是一個NBA球員,它一定會具有:年齡,姓名,身高,體重,所在球隊,球員號碼

然後他們也會具有相同的技能:

PHP中的物件導向實踐-基本實作案例

但是問題是,這個類別裡面有定義具體的身高嗎,有具體的姓名嗎,有具體的體重嗎,都沒有,但是如果我們把這些屬性都寫上去以後,是不是就是成為了具體的一個物件

這就是類別和物件的關係,具體點就是,類別是相似物件的描述,這個稱之為類別的定義,類別是所有這些相似物件的藍圖或原型

#例如詹姆斯這個物件怎麼來的,就是把這個類別的屬性值設定好就可以了

類別的物件就是類別的一個

實例(Instance)<strong></strong>,這個操作也叫做類別的實例化

例如詹姆斯,喬丹,Kobe都是NBA球員這個類別的實例,實例的他們的這個過程就叫做類別的實例化

類別我們可以了解為,它就是一個空架子,它只是定義了物件怎麼分,而物件的話它就定義了,具體的值,必須要把所有的屬性值都寫具體才行

補充一個概念:我們將類別的物件和方法統稱為類別成員

二、實例化的概念

1)    類別的實例化定義

就是透過類別創造一個具體的對象,這個過程就是類別的實例化,相當於就是把這個空架子填滿

 舉例:例如透過NBA球員這個類別我們創建了詹姆斯,Kobe ,喬丹,這其中就是把這個NBA球員類別實例了3次

PHP中的物件導向實踐-基本實作案例

總結:類別只有一個,但是它可以被多次實例化,得到多個具體的物件

Tip:具體怎麼實現,我們之後會在程式碼裡進行具體的演示

#2)類別的實例化

2) 舉例:以喬丹為例

PHP中的物件導向實踐-基本實作案例

左邊是類,沒有數據,右邊是喬丹,那麼要實例化它怎麼實例化呢,就是直接把這些姓名,身高,體重,所在球隊,球員號碼這些值填入具體,那麼喬丹這個物件就實例出來了

Tip:實例化,可以理解為將類別化作成一個實際的例子

##三、具體案例

1) 案例學習目標

1. 如何定義一個類別

2. 如何實例化一個類別

3. 如何呼叫類別的屬性與方法

2)  具體見以下程式碼

<?php
/***
 * 案例目标:
 *  1.类的定义
 *  2.类的实例化
 *  3.属性的赋值
 *  4.方法的调用
 *  
 */
/***定义一个类,类的名字叫NbaPlayer(中文=NBA球员)
 * 提示:
 *  1.定义类的过程:我们首先以class开始,然后写上类 名称:NbaPlayer,最后要写上一对{}
 *  2.类的名字通常首字母要大写
 *  3
 * 
***/
class NbaPlayer{
    //定义属性
    public $name = "";
    public $height = "";
    public $weight = "";
    public $team = "";
    public $playerName = "";
    //定义方法
    //定义跑的方法
    //提示:
      //方法定义的过程:
        //1.写上方法的类型,public,表示公共的方法,可以被外部直接调用
        //2.写上function
        //3.定义方法的名称,然后写上一对(),最后{}结尾     
    //总结:
        //方法定义和之前js中函数的定义是一样的,只是类中的方法多了一个public
    public function run(){
        //里面的代码我们称之为业务逻辑
        echo "跑步<br/>";
    }
    //定义跳跃方法
    public function jump(){
        echo "跳跃<br/>";
    }
    //定义运球方法
    public function dribble(){
        echo "运球<br/>";
    }
    //定义投篮的方法
    public function shoot(){
        echo "投篮<br/>";
    }
    //定义扣篮方法
    public function dunk(){
        echo "扣篮<br/>";
    }
    //定义传球
    public function pass(){
        echo "传球<br/>";
    }
} 
//类到对象的实例化
/*总结:
    1、类的实例化过程= 通过new 类名() 即可完成一个类的实例化过程
*/
//1.创建乔丹
$jordan = new NbaPlayer();//类的实例化
//类赋值
$jordan->name = "乔丹";
$jordan->height = "1.98米";
$jordan->weight = "98公斤";
$jordan->team = "公牛";
$jordan->playerName = "23";
//输出对象值
print_r("乔丹名称:".$jordan->name."<br/>");
print_r("乔丹身高:".$jordan->height."<br/>");
//总结:通过->可以调用对象里的属性
echo "<br/>";
//输出对象方法
$jordan->dribble();
$jordan->pass();
//总结:通过->符号可以调用对象的方法
?>

以上是PHP中的物件導向實踐-基本實作案例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn