PHP5的訪問方式允許限制對類成員的訪問. 這是在PHP5中新增的功能,但在許多面向對象語言中都早已存在. 有了訪問方式,才能開發一個可靠的面向對象應用程序,并且構建可重用的面向對象類 " /> h肉动漫在线视频无修无遮挡,168黄色网,免费搞黄网站

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

第八節 訪問方式 [8]


php5的訪問方式允許限制對類成員的訪問. 這是在php5中新增的功能,但在許多面向對象語言中都早已存在. 有了訪問方式,才能開發一個可靠的面向對象應用程序,并且構建可重用的面向對象類庫.

像C++和Java一樣,php有三種訪問方式:public,private和protected. 對于一個類成員的訪問方式,可以是其中之一. 如果你沒有指明訪問方式,默認地訪問方式為public. 你也可以為靜態成員指明一種訪問方式,將訪問方式放在static關鍵字之前(如public static).

Public成員可以被毫無限制地訪問.類外部的任何代碼都可以讀寫public屬性. 你可以從腳本的任何地方調用一個public方法. 在php的前幾個版本中,所有方法和屬性都是public, 這讓人覺得對象就像是結構精巧的數組.

Private(私有)成員只在類的內部可見. 你不能在一個private屬性所在的類方法之外改變或讀取它的值. 同樣地,只有在同一個類中的方法可以調用一個private方法. 繼承的子類也不能訪問父類中的private 成員.

要注意,類中的任何成員和類的實例都可以訪問private成員. 看例子6.8,equals方法將兩個widget進行比較.==運算符比較同一個類的兩個對象,但這個例子中每個對象實例都有唯一的ID.equals 方法只比較name和price. 注意equals方法如何訪問另一個Widget實例的private屬性. Java和C都允許這樣的操作.

Listing 6.8 Private members
<?php
class Widget
{
private $name;
private $price;
private $id;

public function __construct($name, $price)
{
$this->name = $name;
$this->price = floatval($price);
$this->id = uniqid();
}
//checks if two widgets are the same 檢查兩個widget是否相同
public function equals($widget)
{
return(($this->name == $widget->name)AND
($this->price == $widget->price));
}

$w1 = new Widget('Cog', 5.00);
$w2 = new Widget('Cog', 5.00);
$w3 = new Widget('Gear', 7.00);

//TRUE
if($w1->equals($w2))
{
print("w1 and w2 are the same<br>n");
}

//FALSE
if($w1->equals($w3))
{
print("w1 and w3 are the same<br>n");
}

//FALSE, == includes id in comparison
if($w1 == $w2) file://不等,因為ID不同
{
print("w1 and w2 are the same<br>n");
}
?>  一個子類可能改變通過覆寫父類方法來改變方法的訪問方式,盡管如此,仍然有一些限制. 如果你覆寫了一個public類成員,他子類中必須保持public. 如果你覆寫了一個protected成員,它可保持protected或變成public.Private成員仍然只在當前類中可見. 聲明一個與父類的private成員同名的成員將簡單地在當前類中建立一個與原來不同的成員. 因此,在技術上你不能覆寫一個private成員.

Final關鍵字是限制訪問成員方法的另一個方法. 子類不能覆寫父類中標識為final的方法. Final關鍵字不能用于屬性. //haohappy注:php5的面向對象模型仍然不夠完善,如final不像Java中那樣對Data,Method甚至Class都可以用。

php技術第八節 訪問方式 [8],轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 成人亚洲视频 | 亚洲综合色婷婷在线观看 | 丝袜五月天 | 色偷偷7777www人 | 三级毛片网 | 色在线视频播放 | 欧美视频网址 | 依人在线免费视频 | 婷婷色九月综合激情丁香 | 国产精品视频福利一区二区 | 午夜毛片免费看 | 免费精品视频在线 | 亚洲一区二区免费 | 日本三区 | avwww在线| 午夜免费小视频 | 天天干天天爽 | 国产精品久久久久免费a∨ 国产精品久久久久免费视频 | 在线观看免费国产视频 | 色婷婷伊人 | 国产精品久久久久网站 | 色在线网| 国内精品久久久久久野外 | 四虎影视8848a四虎在线播放 | 精品国产乱码久久久久久浪潮 | 四虎在线视频免费观看视频 | 久久国产精品高清一区二区三区 | 美女免费黄 | 亚洲国产精品日韩高清秒播 | 五月天综合色 | 萝控喷水视频 | fefe66毛片免费看 | 国产熟睡乱子伦视频观看软件 | 92精品国产自产在线观看48 | 99热这里只有精品88 | 久久国产精品久久久 | 美国一级毛片aa黑寡妇 | 国产精品视频福利 | 网站免费满18成年在线观看 | 黄站视频| 亚洲大片免费观看 |