日常環境由無數實體組成:植物、人群、交通工具、食物……實在是太多了,光是把它們列出來都要花上幾個小時的時間。每個實體都由一組性質和行為來定義
例如,一個交通工具可以定義有顏色、輪胎數、製造商、型號和容量等性質,並定義有停止、前進、轉彎和鳴笛等行為。在OOP術語中,實體的性質和行為的具體定義稱為類別(class)。
類別的定義與建立
類別是具有相同屬性和服務的一組物件的集合。它為屬於該類別的所有物件提供了統一的抽象描述,其內部包括屬性和方法兩個主要部分。在物件導向的程式語言中,類別是一個獨立的程式單位,它應該有一個類別名稱並包括屬性說明和方法說明兩個主要部分。
類別用於表示要在應用程式中處理的實際事物。例如,假設要創建一個管理公共圖書館的應用程序,可能就要包括一些類別來表示書籍、雜誌、員工、特殊事件、顧客以及需要管理的其他事物。每個實體都包含一組性質和行為,在OOP中分別稱為字段(field)和方法(method),它們定義了實體。 PHP 中一般的類別建立語法如下:
class Class_Name { // 字段声明 // 方法声明 }
建立一個類別:
class Employee { private $name; private $title; protected $wage; protected function clockIn() { echo "Member $this->name clocked in at ".date("h:i:s"); } protected function clockOut() { echo "Member $this->name clocked out at ".date("h:i:s"); } }
這個類別名為Employee,定義了3個欄位:name、title和wage,也定義了兩個方法:clockIn(簽到)和clockOut(簽離)。
類別的應用程式
一個定義了屬性和方法的類別就是一個完整的類別了,可以在一個類別裡包含一個完整的處理邏輯。使用 new 關鍵字來實例化一個物件以便應用類別裡面的邏輯。可以同時實例化多個物件。
類別的實例化:
複製程式碼 程式碼如下:
object = new class_name();
實例化一個物件後,使用-> 操作符來存取物件的成員屬性和方法。例如:
object->var_name; object->function_name;
如果要在定義的類別裡面存取成員的屬性或方法,可以使用偽變數 $this 。 $this 用來表示目前物件或物件本身 。
<?php class Person { // 人的成员属性 var $name; //人的名字 var $age; //人的年龄 //人的成员 say() 方法 function say() { echo "我的名字叫:".$this->name."<br />"; echo "我的年龄是:".$this->age; } } //类定义结束 $p1 = new Person(); //实例化一个对象 $p1->name = "Gonn"; //给 $p1 对象属性赋值 $p1->age = 25; $p1->say(); //调用对象中的 say()方法 ?>
程式執行結果:
我的名字叫:Gonn 我的年龄是:25
以上是深入學習php中的class類的詳細內容。更多資訊請關注PHP中文網其他相關文章!