91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php繼承的使用方法

發布時間:2021-08-09 23:39:03 來源:億速云 閱讀:161 作者:chen 欄目:編程語言

本篇內容主要講解“php繼承的使用方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“php繼承的使用方法”吧!

繼承屬于面向對象的三大機制中的一種。在C++,JAVA,PHP中都存在,下面為大家介紹的是PHP中的使用方法。

通常需要這樣一些類,這些類與其它現有的類擁有相同變量和函數。實際上,定義一個通用類用于所有的項目,并且不斷豐富這個類以適應每個具體項目將是一個不 錯的練習。為了使這一點變得更加容易,類可以從其它的類中擴展出來。擴展或派生出來的類擁有其基類(這稱為“繼承”,只不過沒人死)的所有變量和函數,并包含所有派生類中定義的部分。

類中的元素不可能減少,就是說,不可以注銷任何存在的函數或者變量。一個擴充類總是依賴一個單獨的基類,也就是說,不支持多 繼承。使用關鍵字“extends”來擴展一個類。

<?php  class test {  public function __construct() {   }  public function name() {   $this->xname('John');   }  private function showName($name) {   echo 'my name in test is '.$name;   }   }  class extendTest extends test {  public function __construct() {   parent::__construct();   }  private function showName($name) {   echo 'my name in extendTest is '.$name;   }   }  $test = new extendTest();   $test->name();   ?>

上述示例定義了名為 Named_Cart 的類,該類擁有 Cart 類的所有變量和函數,加上附加的變量 $owner 和一個附加函數 set_owner()。現在,以正常的方式創建了一個有名字的購物車,并且可以設置并取得該購物車的主人。而正常的購物車類的函數依舊可以在有名字的購 物車類中使用:

<?php  $ncart = new Named_Cart; // 新建一個有名字的購物車  $ncart->set_owner("kris"); // 給該購物車命名  print $ncart->owner; // 輸出該購物車主人的名字  $ncart->add_item("10", 1); // (從購物車類中繼承來的功能)  ?>

這個也可以叫做“父-子”關系。創建一個類,父類,并使用 extends 來創建一個基于父類的新類:子類。甚至可以使用這個新的子類來創建另外一個基于這個子類的類。

Note:

類只有在定義后才可以使用!如果需要類 Named_Cart 繼承類 Cart,必須首先定義 Cart 類。如果需要創建另一個基于 Named_Cart 類的 Yellow_named_cart 類,必須首先定義 Named_Cart 類。簡捷的說:類定義的順序是非常重要的。

class Person{  protected $name;//protected保護的權限,在子類可以訪問,外部不能訪問  protected $age;  protected $sex;  function __construct($name,$age,$sex){  $this->name=$name;//當使用this時,就算name沒有聲明,也會再次聲明一個  $this->age=$age;  $this->sex=$sex;  echo "###############";  }  public function say(){  echo "我的名字:{$this->name},我的年齡{$this->age}:,我的性別:{$this->sex}<br/>";  }  protected function eat(){  echo "wwwwwwwwwwwwwwwwwwwww<br>";  }  function run(){  }  protected $name;//protected保護的權限,在子類可以訪問,外部不能訪問  protected $age;  protected $sex;  }  //繼承  class Student extends Person{  var $school;  function __construct($name,$age,$sex,$school){  parent::__construct();//調用父類的構造方法  $this->school=$school;  }  //重載say()方法,進行擴展  protected function say(){//父類使用public,子類的權限不能低于父類,可以喝父類的權限相同  //Person::say();//調用父類的say()方法  parent::say();//調用父類say()方法,parent代表父類名,當父類名變化時也能夠調用。  echo "我所在的學校{$this->school}<br/>";//www.3ppt.com  }  function study(){  echo "{$this->name}在學習<br/>";  }  }  $s=new Student("zhangsan",23,"男");  $s->say();  $s->study();

繼承的優點:

1.面向對象的三大特性之一

2.開放性、可擴充性

3.增加代碼的重用性

4.提高了軟件的可維護性

5.繼承就是用子類去“擴展”父類

C++ 屬于多繼承,同一個類可以有多個父類

PHP和JAVA屬于單繼承,同一個類只能有一個父類

不管是多繼承或者單繼承,都可以有多個子類

只要你在設計兩個類時,有可以共享的成員,就將可以共享的內容單獨作為一個基類使用

一、類繼承的應用

1.聲明一個子類,使用extends關鍵字去繼承(擴展)一個父類

2.子類可以從父類中繼承所有的內容,包括成員屬性方法,構造方法......,在子類中都可以使用

二、訪問類型控制

雖然子類可以從父類中繼承所有內容,但私有的private成員,只能在本類中使用,子類中也不能使用

封裝時,既可以讓自己類的內部可以訪問,也讓子類可以用,但類的外部不能使用,只要將權限設置為protected

三、子類中重載父類的方法

1.子類可以聲明可以聲明和父類相同的方法名,即子類覆蓋了父類同名的方法

2.子類的方法對父類方法的擴展

3.在子類中調用父類中被覆蓋的方法

使用 父類名::方法名() parent::方法名()

4.在子類中編寫構造方法,如果父類中也有構造方法,一定要去調用一次父類中被覆蓋的構造方法

注意:子類中重載的方法,不能低于父類中訪問權限(子類可以放大權限,但不能縮小權限)

到此,相信大家對“php繼承的使用方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

武威市| 霍州市| 马鞍山市| 尼玛县| 沁源县| 长子县| 前郭尔| 高邑县| 韩城市| 远安县| 东阿县| 二手房| 大英县| 四子王旗| 西吉县| 胶南市| 犍为县| 临安市| 佛山市| 叙永县| 察隅县| 离岛区| 土默特右旗| 甘肃省| 安徽省| 长沙市| 高密市| 临武县| 新乡县| 泰州市| 巴林右旗| 涞水县| 岗巴县| 永兴县| 大丰市| 辽宁省| 兰坪| 龙门县| 阿鲁科尔沁旗| 同仁县| 荆门市|