PHP 類和物件(類的屬性)

2021-08-13 16:05:15 字數 1551 閱讀 6970

在類中定義的變數稱之為屬性,通常屬性根資料庫中的字段有一定的關聯,因此

也可以稱其為"字段"。

常見的屬性宣告是由關鍵字public,protected,var或private開頭,後面跟乙個普通的變數聲

來組成。還有一些成員屬性包括,靜態static,常量const。

public

:預設值,表示全域性的,類內部外部子類都可以訪問。

protected:表示受保護的,只有本類或子類或父類中可以訪問,不允許外部呼叫。

private:表示私有的,只有本類內部可以使用。

var:php 5 版本中會認為這個成員屬性為public型別的屬性。

static

(1)靜態的屬性;

(2)用static修飾的成員屬性可以被同乙個類的所有物件共享;

(3)靜態的資料是在類第一次被載入的時候就存在了記憶體中的資料段中(初始化靜態段);

(4)類中使用self::成員屬性名;

(5)類外  類名::成員屬性名;

const:   

(1)類中常量屬性,在類中宣告常量必須使用const;

(2)類中使用  self::成員屬性名;

(3)類外使用  類名::成員屬性名;

注意:屬性中的變數可以初始化,但是初始化的值必須是常數

(這裡的常數是指php指令碼在編譯階段時就為常數,而不是在編譯階段之後在執行階

段運算出的常數。例如,不能包含任何運算子,不能是任何變數,不能是乙個函式等)。

成員屬性的呼叫方式

在類的成員方法裡面,可以通過$this->property(property是屬性名字)這種方式來

訪問類的屬性、 方法。但是要訪問類的靜態屬性或者在靜態方法裡面卻不能使用,而

是使用self::$property。 

在類的非靜態方法裡面可以使用偽變數 $this,這個偽變數是呼叫該方法的例項化物件引用。

例1:class car

$acar=new car();

echo $acar->name; //呼叫物件的屬性

echo $acar->color; //錯誤!受保護的屬性不允許外部呼叫

echo $acar->price; //

錯誤!私有屬性不允許外部呼叫

受保護的屬性和私有屬性不允許外部呼叫,在類的成員方法內部是可以呼叫的。

可將例1修改為如下例2:

例2:class car

}echo $acar->getprice();

根據此方法就可以訪問類的內部的私有屬性或受保護的屬性。

本節完。

PHP類和物件

php中用class來定義類,用new例項化物件,用extends繼承類,不過只能單繼承,屬性和方法有public private和protected做訪問控制,預設為public,在類裡定義常量不需要 用 範圍解析符可以呼叫父類的方法,訪問類的靜態變數 靜態方法和常量。範圍解析操作符 也可稱作 p...

PHP類和物件

php類和物件 類是物件導向程式設計的基本概念,通俗的理解類就是對現實中某乙個種類的東西的抽象,比如汽車可以抽象為乙個類,汽車擁有名字 輪胎 速度 重量等屬性,可以有換擋 前進 後退等操作方法。通常定義乙個汽車類的方法為 class car 物件通過new關鍵字進行例項化 car new car e...

PHP類和物件

類是物件導向程式設計的基本概念,通俗的理解類就是對現實中某乙個種類的東西的抽象,比如汽車可以抽象為乙個類,汽車擁有名字 輪胎 速度 重量等屬性,可以有換擋 前進 後退等操作方法。通常定義乙個汽車類的方法為 class car 123456類是一類東西的結構描述,而物件則是一類東西的乙個具體例項,例如...