一、面向?qū)ο缶幊痰幕靖拍?/strong>
1. 類(Class)
類是面向?qū)ο缶幊痰幕締挝?,它是一種抽象的數(shù)據(jù)類型,用于描述具有相同屬性和方法的對象的集合。在PHP中,可以使用class關(guān)鍵字來定義一個類。
2. 對象(Object)
對象是類的實例,它是現(xiàn)實世界中的一個具體事物在程序中的表示。通過創(chuàng)建類的實例,可以調(diào)用類定義的方法和屬性。在PHP中,可以使用new關(guān)鍵字來創(chuàng)建一個對象。
3. 屬性(Attribute)
屬性是對象的狀態(tài)信息,它用于存儲對象的數(shù)據(jù)。在PHP中,可以使用$符號來訪問對象的屬性。
4. 方法(Method)
方法是對象的行為,它用于實現(xiàn)對象的功能。在PHP中,可以通過對象名加括號的方式來調(diào)用對象的方法。
二、面向?qū)ο缶幊痰奶匦?/strong>
1. 封裝(Encapsulation)
封裝是指將對象的屬性和方法包裝在一起,隱藏內(nèi)部實現(xiàn)細節(jié),只暴露必要的接口給外部使用。在PHP中,可以通過訪問控制修飾符(如public、private、protected)來控制屬性和方法的訪問權(quán)限。
2. 繼承(Inheritance)
繼承是指子類可以繼承父類的屬性和方法,實現(xiàn)代碼的復(fù)用。在PHP中,可以使用extends關(guān)鍵字來定義繼承關(guān)系。
3. 多態(tài)(Polymorphism)
多態(tài)是指不同類的對象可以使用相同的接口,實現(xiàn)不同的行為。在PHP中,可以通過重寫父類的方法或定義抽象方法來實現(xiàn)多態(tài)。
三、面向?qū)ο缶幊痰膽?yīng)用實例
1. 學(xué)生管理系統(tǒng)
class Student {
public $name;
private $age;
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
public function showInfo() {
echo "姓名:" . $this->name . ",年齡:" . $this->age . "歲";
}
}
$student1 = new Student("張三", 18);
$student2 = new Student("李四", 19);
$student1->showInfo(); // 輸出:姓名:張三,年齡:18歲
$student2->showInfo(); // 輸出:姓名:李四,年齡:19歲2. 購物車系統(tǒng)
class Product {
public $name;
public $price;
public function __construct($name, $price) {
$this->name = $name;
$this->price = $price;
}
}
class ShoppingCart {
private $items = array();
public function addProduct(Product $product) {
$this->items[] = $product;
}
public function showItems() {
foreach ($this->items as $item) {
echo "商品名稱:" . $item->name . ",價格:" . $item->price . "元
";
}
}
}