php-物件導向(1)

來源:互聯網
上載者:User
1.回顧:上篇的學習了php進階中的 過濾器

2.從這篇開始將學習 php——物件導向

3.物件導向

3.1瞭解

   (1)php5 引入了新的物件模型 (object model),重寫了php的處理對象方式,允許更加的效能   (2)新特性包括:可見度,抽象類別和final類,類方法,魔術方法,介面,對象複製和類型提示   (3)php對象是按引用傳遞的,即每個包含對象的變數都持有對象的引用(reference),而不是整個對象的拷貝

  3.2基本概念
   (1) 關鍵字 class開頭,後面跟著類名,可以是任何非php保留字的名字   (2) 包含類成員和方法的定義   (3) 偽變數$this 可以在當一個方法在對象內調用時使用。   (4) $this是一個到調用對象的引用   (5) 通常方法所屬於對象,但也可以是另一個對象,如果該方法是從第二個對象內靜態調用的話

3.3 $this 的使用

$this的使用     class one{         function oneFun(){             if(isset($this)){                 echo '$this 的定義是 (';                 echo  get_class($this);                 echo ')';             }else{                 echo '$this 沒有定義';             }         }     }     class two{         function twoFun(){             one::oneFun();         }     }     $a =new one();     $a->oneFun(); //結果:$this 的定義是 (one)     one::oneFun();//結果:$this 沒有定義     $b=new two();     $b->twoFun(); //結果:$this 的定義是 (two)     two::twoFun();//結果:$this 沒有定義

3.4. 簡單類定義

 class aclass{         //成員變數         public $var="我是成員變數";         public $t1="我是t1";         //成員函數/方法         public function displayVar(){             echo "
"; echo $this->var; echo $this->t1; } }

3.5 new關鍵字

(1)建立對象執行個體的時候,必須建立一個新的對象並將其賦值給一個變數

     (2)每次建立新對象時,該對象總是被賦值,除非構函數出錯

//調用      $c=new aclass();      $c->displayvar();

3.6 對象賦值

當把一個對象已經建立的執行個體賦值給新變數的時候,新變數會訪問同一個執行個體

      #當把一個對象已經建立的執行個體賦值給新變數的時候,新變數會訪問同一個執行個體      $d=$c;      $e =& $c;      $c->var='$d 有這個值';      $c=NULL;       echo "
"; var_dump($c); //結果:NULL var_dump($d); //結果:object(aclass)#3 (2) { ["var"]=> string(15) "$d 有這個值" ["t1"]=> string(8) "我是t1" } var_dump($e); //結果:NULL

下篇將學習,繼承,屬性和靜態屬性/方法(static)

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

以上就介紹了php-物件導向(1),包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.