隱藏對象字段和實現細節,僅通過對外接口,控制在程序中字段的讀取和訪問級別
,將抽象的行為和數據相結合,形成一個有機的整體。
<?php
classs Conputer{
//public 公共的,內外可以訪問
//private 私有的,類內可以訪問
//protected 受保護的,類內和子類可以訪問
//類內指的是{}之間的部分
}
?>
確定一個對象是否是一個類的實例,一個類的子類的實例,或者實現了一個接口
可以做成私有的,也可以設置靜態方法,和普通字段設置一樣,
<?php
class Computer{
const PI=3.14;
}
?>
1、總結:靜態方法只能訪問靜態的,或者常量,用self關鍵字;
<?php
//類名一般第一個字母大小
class Computer{
const PI=3.1415926;//常量,在該類所有的實例化對象的生命周期內,值不變,約定俗成 常量名稱大寫
public static $_count=0; //靜態類字段
private $_name='聯想'; //我是公共字段,內外可以訪問,初始化不可以賦值變量,如 $_name=time();錯誤
private $_cpu; //我是私有字段,類內可以訪問
protected $_zb; //我是受保護的字段,子類和類內可以訪問
public function _run(){
//類內訪問字段: $this->字段名稱
$this->_cpu='I5';
}
//靜態方法可以通過類—>方法名稱訪問,也可以通過 類名稱::方法名稱訪問
//靜態方法,不可以訪問非靜態字段,非靜態方法,通過$this也無法訪問,因為不在對象中
//靜態方法,可以訪問靜態字段,靜態方法,
//靜態方法內部,不可使用$this關鍵字
//靜態只能訪問靜態 ,或者常量,
public static function _run2(){
echo self::$_count;
//self::_run(); 錯誤
//self::_name; 錯誤
self::PI;
}
//普通方法可以訪問靜態方法,因為,靜態方法是為了對所有實例共享的
public function _run3(){
self::_run2();
}
//攔截器
//變量有用
private function __set($varname,$varvalue){
$this->$varname=$varvalue;
}
private function __get($varname){
return $this->$varname;
}
}
//實例化一個類
$computer=new Computer();
$computer1=new Computer();
Computer::_run2();
echo '<br>';
$computer->_run2();
echo '<br>';
//訪問常量
echo Computer::PI;
echo '<br>';
//echo Computer::$_count;
//echo $computer->_count; 無法訪問
//echo $computer->PI; 無法訪問
//攔截器 設置變量值
$computer->_name="dell";
echo '<br>';
echo $computer->_name;
echo '<br>';
$computer->_count="dell";
echo '<br>';
echo $computer->_count;
echo '<br>';
echo Computer::$_count;
//instanceof 關鍵字 確定某個對象是否是一個類的實例。一個類的子類,或者是實現了某個接口,
echo ($computer instanceof Computer);
?>
另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
本文名稱:PHPOOP的特性-封裝-創新互聯
網頁URL:http://vcdvsql.cn/article34/djggpe.html
成都網站建設公司_創新互聯,為您提供軟件開發、網站內鏈、自適應網站、全網營銷推廣、商城網站、面包屑導航
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯