首頁  >  文章  >  後端開發  >  php-物件導向(2)

php-物件導向(2)

WBOY
WBOY原創
2016-08-08 09:19:24817瀏覽

1.回顧:上篇學習了,物件導向的一些基本知識,包括$this的使用

2.這篇將學習php物件導向的繼承,屬性,靜態屬性和方法

3 .繼承(extends)

     (1)一个类可以在声明用extends关键字继承另一类的方法和成员
     (2)不过扩展多少个类,只能继承一个基类
     (3)被继承的方法和成员可以通过用同样的名字重新声明被覆盖
     (4)若父类定义方法使用了final关键字,则不可覆盖
     (5)可以通过parent::来访问被覆盖的父类方法和成员
<pre name="code"> class aclass{

         //成员变量
         public $var="我是成员变量";
         public $t1="我是t1";
         //成员函数/方法
         public function displayVar(){
             echo "<br>";
             echo $this->var;
             echo $this->t1;
         }
      }
      class bclass extends aclass{

            public function displayVar(){
             echo "我是 bclass";
             parent::displayVar();
          }
      }
  
      $f=new bclass();  
      $f->displayVar(); #结果: 我是 bclass 我是成员变量我是t1

4.屬性
<pre class="brush:php;toolbar:false"> (1)类的成员变量为属性/字段/特征。一般使用属性。
 (2)属性声明:
          public:类成员可以在任何地方被访问;
          protected :可以被其所在类的子类和父类访问(当然,该成员所在的类也可以访问)
          private  :能被其所在类访问。
          var :可以放在public,prorected,private前面,也可直接声明属性:默认是public
 (3)属性变量可以进行初始化,但初始化,必须是常数
 (4)在类成员方法里,可通过 $this->属性/方法名 来访问属性/方法
<pre name="code"> class cclass{
         public $var1="hello";
         public $var2=array(TRUE,FALSE);
      }
        #在php5.3 后,可以使用nowdoc初始化属性
        public $var3=<<<'yuan';

5.原創文章原始主允許不得轉載。
以上就介紹了php-物件導向(2),包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn