標籤:修飾符 個人 cti 字母 訪問 自己 this php物件導向 定義類
重點:定義類與執行個體化類;存取修飾詞;建構函式
一、物件導向
面向對於與面向過程的主要區別在於:前者包含類和對象的概念
二、類和對象
1、類是由眾多個物件抽象(歸納總結)出來的東西 代表所有對象的特性
2、對象是由累執行個體化出來的東西 具有自己的特點 真實存在的 一切皆對象
3、定義類
class 加類名(首字母大寫){}
eg:
class Ren
{
var $name; ----成員變數
var $age;
function eat() -----成員方法或函數
{
}
}
4、執行個體化 (因為類是抽象的,不能直接用)
$r = new Ren(); -------執行個體化一個人
$r ->name = "張三"; ---------調用成員變數
$r->age = 1;
$r->eat(); ---------調用成員方法
$r1 = new Ren();-------執行個體化第二個人
$r2 = new Ren();-------執行個體化第三個人
5、存取修飾詞 非常重要 ( 成員變數一般都是private,成員方法一般都是public)
(1)public 公開的
class Ren
{
public $name;
public $age;
public function eat()
{
}
}
(2)protected 受保護的 只能在該類和該類的子類裡訪問
(3)private 私人的 只能在該類訪問
class Ren
{
private $name;
private $age=2;
public function eat()
{
echo $this->age; --- this代表該對象(誰調用ear()就代表該對象);不是該類
}
}
$r = new Ren();
三、建構函式(無論寫不寫都存在,不寫只是看不到而已)
用於初始設定變數 預設為public
1、 特點
(1)寫法特殊
function 類名(){} -----------以前用的,現在用也沒錯
function__construct(){} ------------現在用的
(2)執行時間特殊 -----------在執行個體化時就執行
Eg1:
class Ren
{
private $sex="男";
function __construct()
{
$this->sex;
}
public function eat()
{
}
}
$r = new Ren();
$r->eat();
Eg2:帶參數
class Ren
{
private $sex;
function __construct($s)
{
$this->sex=$s;
}
public function eat()
{
}
}
$r = new Ren(“女”);
$r->eat();
php物件導向(一)---2017-04-17