PHP 建立一個類別 並產生一個物件 然後使用它

PHP Create a class and an object of this class

31
很多人一開始學物件導向程式設計時,比較搞不懂什麼是類別,什麼是物件,他們之間的關係又是什麼?舉個例子,「人類」是類別,有一個人類叫做「王小明」,而「王小明」就是人類這個類別所產生的物件。
再來,「貓」是類別,有一隻貓咪叫做「小咪」,而「小咪」就是貓這個類別所產生的物件。但是「小咪」「王小明」都是物件,那小咪是人類這個類別嗎?當然不是。

下面就用上面的例子,來寫一個簡單的PHP範例

class Human
{
private $Name;
public function __construct()
{
}
public function setName($inputName)
{
$this->Name = $inputName;
}
public function WhoAreYou()
{
echo "My name is $this->Name";
}
}
$tempHuman = new Human;
$tempHuman->setName("Wang");
$tempHuman->WhoAreYou();

上面的程式碼裡面,我們創造了一個 Human 的類別,並利用這個類別、產生一個暫時的物件 $tempHuman
接著我們把這個物件透過函式 setName 來設定他的名字,接著透過 WhoAreYou 來觀看結果,會看到他輸出一段文字 "My name is Wang"
我們繼續把「貓」跟「小咪」完成

class Cat
{
private $Name;
public function __construct()
{
}
public function setName($inputName)
{
$this->Name = $inputName;
}
public function Jump()
{
echo "[ $this->Name ] jump";
}
}
$tempCat = new Cat;
$tempCat->setName("Kitty");
$tempCat->Jump();

現在我們有 Human 跟 Cat 這兩個類別,並且擁有 $tempHuman 跟 $tempCat 這兩個物件
很明顯,如果我用 $tempHuman 這個物件想要去執行 Cat 這個類別裡面的函式 Jump ,是不行的,因為 $tempHuman 是 Human 這個類別產生的物件,他並不是 Cat 的物件。
物件導向程式設計的概念很多,比較簡單的想法,就是用現實生活中的概念去寫程式,好比上面我寫了一個人類一個貓咪的類別,不同的類別又可以做不同的事情。
你會發現用這樣子的思考方式,很貼近自己的現實世界,會比較容易思考,寫出來的程式也會比較好管理。
喜歡我們的文章嗎
給一個讚吧~^^
本站聲明
目前偵測到您現在處於未登入的狀況中 若在此狀態進行收藏很有可能導致資料遺失或錯誤 建議先行登入後重新執行步驟,不僅能保障收藏資料也能獲得最新的資訊唷! kikinote小精靈關心您!
不再顯示此視窗