欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

php oop例子

陳安慧1年前7瀏覽0評論
PHP是一個廣泛應用的服務器端腳本語言,為了更好地組織代碼,開發者們很自然地引入了面向對象編程的思想。在PHP中,我們可以使用類和對象來表示真實世界中的實體,從而更加靈活和高效地操作數據。下面,我們來看一些PHP OOP例子。
1. 創建類和對象
創建一個類非常簡單,只需要使用class關鍵字即可。一個類可以包含多個屬性和方法,用于描述該類的特征和行為。以下是一個表示學生的類:
<?php
class Student {
public $name;
public $age;
public $gender;
<br>
    public function __construct($name, $age, $gender) {
$this->name = $name;
$this->age = $age;
$this->gender = $gender;
}
<br>
    public function getInfo() {
return "{$this->name}, {$this->age}, {$this->gender}";
}
}
?>

以上代碼中,我們定義了一個Student類,包含三個屬性(name,age和gender)和兩個方法(__construct和getInfo)。__construct方法是一個構造函數,用于在對象創建時初始化屬性值;getInfo方法返回該對象的屬性字符串。現在,我們可以創建多個對象,并調用getInfo方法來獲得對應的信息:
<?php
require_once 'Student.php';
<br>
$st1 = new Student('Tom', 18, 'Male');
echo $st1->getInfo() . "<br/>";
<br>
$st2 = new Student('Lily', 20, 'Female');
echo $st2->getInfo() . "<br/>";
?>

2. 繼承和多態
繼承和多態是OOP中兩個重要的概念,它們可以極大地提高代碼的復用和擴展性。PHP中支持單繼承和多重繼承(通過接口實現),子類可以繼承父類的屬性和方法,并可以添加或覆蓋其自身的屬性和方法。以下是一個表示教師的類:
<?php
require_once 'Student.php';
<br>
class Teacher extends Student {
public $subject;
<br>
    public function __construct($name, $age, $gender, $subject) {
parent::__construct($name, $age, $gender);
$this->subject = $subject;
}
<br>
    public function getInfo() {
return "{$this->name}, {$this->age}, {$this->gender}, {$this->subject}";
}
}
?>

以上代碼中,我們定義了一個Teacher類,繼承自Student類,添加了一個名為subject的屬性和一個覆蓋了其父類方法的getInfo方法。現在,我們可以創建Teacher對象,并利用多態性來調用getInfo方法:
<?php
require_once 'Teacher.php';
<br>
$te1 = new Teacher('Jim', 30, 'Male', 'Math');
echo $te1->getInfo() . "<br/>";
<br>
$te2 = new Teacher('Ann', 35, 'Female', 'English');
echo $te2->getInfo() . "<br/>";
<br>
$st3 = new Student('Lucy', 22, 'Female');
echo $st3->getInfo() . "<br/>";
?>

以上代碼中,我們創建兩個Teacher對象(te1和te2)和一個Student對象(st3),它們都可以調用getInfo方法,但是返回的信息不同,體現了多態性的特點。
3. 封裝和訪問控制
封裝是OOP的三大特性之一,它可以保護對象的屬性被非法訪問和修改,只允許在類內部和派生類中訪問和修改。PHP中支持public、private和protected三個訪問控制修飾符,分別表示公有、私有和受保護的屬性和方法。以下是一個針對訪問控制的例子:
<?php
require_once 'Student.php';
<br>
class MyStudent extends Student {
private $id;
protected $score;
<br>
    public function __construct($name, $age, $gender, $id, $score) {
parent::__construct($name, $age, $gender);
$this->id = $id;
$this->score = $score;
}
<br>
    public function getId() {
return $this->id;
}
<br>
    public function getScore() {
return $this->score;
}
<br>
    public function setScore($score) {
$this->score = $score;
}
}
?>

以上代碼中,我們定義了一個MyStudent類,繼承自Student類,添加了一個私有的名為id的屬性和一個受保護的名為score的屬性,以及get和set方法對其進行訪問和修改。現在,我們可以創建MyStudent對象,并訪問和修改其id和score屬性:
<?php
require_once 'MyStudent.php';
<br>
$ms1 = new MyStudent('Peter', 21, 'Male', 123456, 90);
echo "id={$ms1->getId()}, score={$ms1->getScore()}" . "<br/>";
<br>
$ms1->setScore(85);
echo "id={$ms1->getId()}, score={$ms1->getScore()}" . "<br/>";
?>

以上代碼中,我們創建了一個MyStudent對象(ms1),并輸出了其id和score屬性值,然后通過setScore方法修改了其分數,并輸出了修改后的結果。
以上是一些PHP OOP例子,通過這些例子我們可以更深入地理解OOP的原理和應用。在實際開發中,我們可以根據具體情況使用類和對象來組織和操作數據,提高代碼的可讀性、可維護性和可擴展性。
上一篇php overflow
下一篇php pay