深入了解PHP類Class的概念
更新時間:2012年06月14日 12:23:54 作者:
日常環(huán)境由無數(shù)實體組成:植物、人群、交通工具、食物……實在是太多了,光是把它們列出來都要花上幾個小時的時間。每個實體都由一組性質(zhì)和行為來定義
例如,一個交通工具可以定義有顏色、輪胎數(shù)、制造商、型號和容量等性質(zhì),并定義有停止、前進、轉(zhuǎn)彎和鳴笛等行為。在OOP術(shù)語中,實體的性質(zhì)和行為的具體定義稱為類(class)。
類的定義與創(chuàng)建
類是具有相同屬性和服務的一組對象的集合。它為屬于該類的所有對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和方法兩個主要部分。在面向?qū)ο蟮木幊陶Z言中,類是一個獨立的程序單位,它應該有一個類名并包括屬性說明和方法說明兩個主要部分。
類用于表示要在應用程序中處理的實際事物。例如,假設要創(chuàng)建一個管理公共圖書館的應用程序,可能就要包括一些類來表示書籍、雜志、員工、特殊事件、顧客以及需要管理的其他事物。每個實體都包含一組性質(zhì)和行為,在OOP中分別稱為字段(field)和方法(method),它們定義了實體。PHP 中一般的類創(chuàng)建語法如下:
class Class_Name
{
// 字段聲明
// 方法聲明
}
創(chuàng)建一個類:
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 關(guān)鍵字來實例化一個對象以便應用類里面的邏輯。可以同時實例化多個對象。
類的實例化:
object = new class_name();
實例化一個對象后,使用 -> 操作符來訪問對象的成員屬性和方法。比如:
object->var_name;
object->function_name;
如果要在定義的類里面訪問成員的屬性或者方法,可以使用偽變量 $this 。$this 用于表示當前對象或?qū)ο蟊旧?。
<?php
class Person {
// 人的成員屬性
var $name; //人的名字
var $age; //人的年齡
//人的成員 say() 方法
function say() {
echo "我的名字叫:".$this->name."<br />";
echo "我的年齡是:".$this->age;
}
}
//類定義結(jié)束
$p1 = new Person(); //實例化一個對象
$p1->name = "Gonn"; //給 $p1 對象屬性賦值
$p1->age = 25;
$p1->say(); //調(diào)用對象中的 say()方法
?>
程序運行結(jié)果:
我的名字叫:Gonn
我的年齡是:25
類的定義與創(chuàng)建
類是具有相同屬性和服務的一組對象的集合。它為屬于該類的所有對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和方法兩個主要部分。在面向?qū)ο蟮木幊陶Z言中,類是一個獨立的程序單位,它應該有一個類名并包括屬性說明和方法說明兩個主要部分。
類用于表示要在應用程序中處理的實際事物。例如,假設要創(chuàng)建一個管理公共圖書館的應用程序,可能就要包括一些類來表示書籍、雜志、員工、特殊事件、顧客以及需要管理的其他事物。每個實體都包含一組性質(zhì)和行為,在OOP中分別稱為字段(field)和方法(method),它們定義了實體。PHP 中一般的類創(chuàng)建語法如下:
復制代碼 代碼如下:
class Class_Name
{
// 字段聲明
// 方法聲明
}
創(chuàng)建一個類:
復制代碼 代碼如下:
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 關(guān)鍵字來實例化一個對象以便應用類里面的邏輯。可以同時實例化多個對象。
類的實例化:
復制代碼 代碼如下:
object = new class_name();
實例化一個對象后,使用 -> 操作符來訪問對象的成員屬性和方法。比如:
復制代碼 代碼如下:
object->var_name;
object->function_name;
如果要在定義的類里面訪問成員的屬性或者方法,可以使用偽變量 $this 。$this 用于表示當前對象或?qū)ο蟊旧?。
復制代碼 代碼如下:
<?php
class Person {
// 人的成員屬性
var $name; //人的名字
var $age; //人的年齡
//人的成員 say() 方法
function say() {
echo "我的名字叫:".$this->name."<br />";
echo "我的年齡是:".$this->age;
}
}
//類定義結(jié)束
$p1 = new Person(); //實例化一個對象
$p1->name = "Gonn"; //給 $p1 對象屬性賦值
$p1->age = 25;
$p1->say(); //調(diào)用對象中的 say()方法
?>
程序運行結(jié)果:
復制代碼 代碼如下:
我的名字叫:Gonn
我的年齡是:25
相關(guān)文章
php中照片旋轉(zhuǎn) (orientation) 問題的正確處理
這篇文章主要介紹了php中照片旋轉(zhuǎn) (orientation) 問題的正確處理,文中給出了詳細的介紹和示例代碼,相信對大家具有一定的參考價值,有需要的朋友們下面來一起看看吧。2017-02-02PHP+JS三級菜單聯(lián)動菜單實現(xiàn)方法
這篇文章主要介紹了PHP+JS三級菜單聯(lián)動菜單實現(xiàn)方法,涉及JavaScript動態(tài)控制頁面樣式及PHP數(shù)據(jù)庫操作相關(guān)技巧,需要的朋友可以參考下2016-02-02PHP遞歸遍歷多維數(shù)組實現(xiàn)無限分類的方法
這篇文章主要介紹了PHP遞歸遍歷多維數(shù)組實現(xiàn)無限分類的方法,涉及PHP遞歸操作遍歷數(shù)組的相關(guān)技巧,在聯(lián)動菜單及父子欄目設計等方面非常具有實用價值,需要的朋友可以參考下2016-05-05