深入了解PHP類Class的概念
更新時間:2012年06月14日 12:23:54 作者:
日常環(huán)境由無數(shù)實體組成:植物、人群、交通工具、食物……實在是太多了,光是把它們列出來都要花上幾個小時的時間。每個實體都由一組性質(zhì)和行為來定義
例如,一個交通工具可以定義有顏色、輪胎數(shù)、制造商、型號和容量等性質(zhì),并定義有停止、前進(jìn)、轉(zhuǎn)彎和鳴笛等行為。在OOP術(shù)語中,實體的性質(zhì)和行為的具體定義稱為類(class)。
類的定義與創(chuàng)建
類是具有相同屬性和服務(wù)的一組對象的集合。它為屬于該類的所有對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和方法兩個主要部分。在面向?qū)ο蟮木幊陶Z言中,類是一個獨(dú)立的程序單位,它應(yīng)該有一個類名并包括屬性說明和方法說明兩個主要部分。
類用于表示要在應(yīng)用程序中處理的實際事物。例如,假設(shè)要創(chuàng)建一個管理公共圖書館的應(yī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(簽離)。
類的應(yīng)用
一個定義了屬性和方法的類就是一個完整的類了,可以在一個類里面包含一個完整的處理邏輯。使用 new 關(guān)鍵字來實例化一個對象以便應(yīng)用類里面的邏輯??梢酝瑫r實例化多個對象。
類的實例化:
object = new class_name();
實例化一個對象后,使用 -> 操作符來訪問對象的成員屬性和方法。比如:
object->var_name;
object->function_name;
如果要在定義的類里面訪問成員的屬性或者方法,可以使用偽變量 $this 。$this 用于表示當(dāng)前對象或?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()方法
?>
程序運(yùn)行結(jié)果:
我的名字叫:Gonn
我的年齡是:25
類的定義與創(chuàng)建
類是具有相同屬性和服務(wù)的一組對象的集合。它為屬于該類的所有對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和方法兩個主要部分。在面向?qū)ο蟮木幊陶Z言中,類是一個獨(dú)立的程序單位,它應(yīng)該有一個類名并包括屬性說明和方法說明兩個主要部分。
類用于表示要在應(yīng)用程序中處理的實際事物。例如,假設(shè)要創(chuàng)建一個管理公共圖書館的應(yīng)用程序,可能就要包括一些類來表示書籍、雜志、員工、特殊事件、顧客以及需要管理的其他事物。每個實體都包含一組性質(zhì)和行為,在OOP中分別稱為字段(field)和方法(method),它們定義了實體。PHP 中一般的類創(chuàng)建語法如下:
復(fù)制代碼 代碼如下:
class Class_Name
{
// 字段聲明
// 方法聲明
}
創(chuàng)建一個類:
復(fù)制代碼 代碼如下:
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(簽離)。
類的應(yīng)用
一個定義了屬性和方法的類就是一個完整的類了,可以在一個類里面包含一個完整的處理邏輯。使用 new 關(guān)鍵字來實例化一個對象以便應(yīng)用類里面的邏輯??梢酝瑫r實例化多個對象。
類的實例化:
復(fù)制代碼 代碼如下:
object = new class_name();
實例化一個對象后,使用 -> 操作符來訪問對象的成員屬性和方法。比如:
復(fù)制代碼 代碼如下:
object->var_name;
object->function_name;
如果要在定義的類里面訪問成員的屬性或者方法,可以使用偽變量 $this 。$this 用于表示當(dāng)前對象或?qū)ο蟊旧?。
復(fù)制代碼 代碼如下:
<?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()方法
?>
程序運(yùn)行結(jié)果:
復(fù)制代碼 代碼如下:
我的名字叫:Gonn
我的年齡是:25
相關(guān)文章
PHP轉(zhuǎn)Go之基礎(chǔ)數(shù)據(jù)類型對比詳解
這篇文章主要為大家詳細(xì)介紹了PHP與Go語言中基礎(chǔ)數(shù)據(jù)類型的對比,以及使用時常見的坑,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下2023-09-09
php和js實現(xiàn)根據(jù)子網(wǎng)掩碼和ip計算子網(wǎng)功能示例
這篇文章主要介紹了php和js實現(xiàn)根據(jù)子網(wǎng)掩碼和ip計算子網(wǎng)功能,結(jié)合實例形式分析了PHP與js針對IP地址子網(wǎng)掩碼計算的相關(guān)操作技巧,需要的朋友可以參考下2019-11-11
PHP如何讀取由JavaScript設(shè)置的Cookie
本文主要介紹了PHP讀取由JavaScript設(shè)置的Cookie的方法。具有很好的參考價值。下面跟著小編一起來看下吧2017-03-03
PHP進(jìn)階學(xué)習(xí)之垃圾回收機(jī)制詳解
這篇文章主要介紹了PHP進(jìn)階學(xué)習(xí)之垃圾回收機(jī)制,詳細(xì)分析了php垃圾回收機(jī)制的概念、原理及對性能的影響,需要的朋友可以參考下2019-06-06

