今天,我們來(lái)談一談Php中的public與private關(guān)鍵字,它們?cè)陬愔杏泻苤匾淖饔谩?/p>
首先,我們來(lái)看一下public關(guān)鍵字。public表示的是公共的,也就是說(shuō),公共的屬性或方法可以被該類的對(duì)象和外部代碼使用,如下面的例子:
class Person { public $name; public function sayHello() { echo "Hello, I am " . $this->name; } } $person = new Person(); $person->name = "Tom"; $person->sayHello(); // 輸出:Hello, I am Tom
在上面的例子中,$name和$sayHello()都是公共的屬性和方法,因此可以在該類的對(duì)象與外部代碼中使用。
接著,我們來(lái)看一下private關(guān)鍵字。private表示私有的,也就是說(shuō),私有的屬性或方法只能被該類本身內(nèi)部的方法所調(diào)用,無(wú)法被其他外部代碼訪問(wèn),如下面的例子:
class Person { private $name; public function setName($name) { $this->name = $name; } public function sayHello() { echo "Hello, I am " . $this->name; } } $person = new Person(); $person->setName("Tom"); $person->sayHello(); // 輸出:Hello, I am Tom echo $person->name; // 報(bào)錯(cuò):Cannot access private property Person::$name
在上面的例子中,$name是私有的屬性,因此無(wú)法在外部代碼中訪問(wèn),只能通過(guò)內(nèi)部的方法setName()來(lái)設(shè)置$name的值,然后通過(guò)sayHello()方法來(lái)輸出該姓名。這就保證了$name屬性的私密性。
最后,我們?cè)偬嵋幌聀rotected關(guān)鍵字。protected表示受保護(hù)的,與private類似,只不過(guò)protected的屬性或方法不僅可以被該類內(nèi)部的方法所調(diào)用,還可以被該類的子類所調(diào)用。這里就不展開講解了,讀者可以自行查閱相關(guān)資料進(jìn)行學(xué)習(xí)。
綜上所述,這就是Php中public和private關(guān)鍵字的基本使用方法,希望讀者可以通過(guò)本文加深對(duì)這些關(guān)鍵字的理解,進(jìn)一步提高Php編程的水平。