国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
Php面向?qū)ο?– 繼承和重寫
首頁 後端開發(fā) php教程 Php面向?qū)ο?– 繼承和重寫_PHP教程

Php面向?qū)ο?– 繼承和重寫_PHP教程

Jul 13, 2016 am 10:19 AM
物件

Php面向?qū)ο?– 繼承和重寫

Php面向?qū)ο?– 繼承和重寫

繼承:

php中,通過在類上,使用特殊的操作達到目的。

通過在定義類時,利用extends來指明當前類對象繼承那個類的對象。

例子:

class C

{

public $p_c = “value c”;

}

class D extends C

{

public $p_d = “value d”;

}

$o = new D;

var_dump($o->p_c)

var_dump($o->p_d)

輸出:string(7) “value c” string(7)“value d”

繼承,指的是兩個對象之間,那么哪有這兩個對象?

Instanceof 操作符 (判斷對象是否是某類的實例)

var_dump($o instanceof D);

輸出:bool(true)

var_dump($o instanceof C);

輸出:bool(true)

因此,一個對象即是當前類的實例,也是該類所繼承類的實例。

Class D extends C

D類對象,繼承自C類對象。

父類:被繼承的類,C類

子類:需要繼承的類,D類

基類:C類是D類的基類

擴展類:D類是C類的擴展類。

重要:

php是單繼承。

繼承的目的:

在于擴展,或者使用某類已經(jīng)存在的操作和數(shù)據(jù)。

重寫 override

繼承時,如果發(fā)生成員沖突,php的處理方式,為重寫。就是子類同名成員覆蓋父類同名成員。不能看到父類的同名成員。

例子:

1.

class P

{

public $name = ‘P’;

}

class C extends P

{

public $name = “C”;

}

$o = new C;

echo $o->name;

2.

class P

{

public $name = ‘P’;

public function sayName()

{

echo‘parent::name’,$this->name;

}

}

class C extends P

{

public $name = “C”;

public function sayName()

{

echo‘self::name’,$this->name;

}

}

$o = new C;

$o->sayName();

輸出:self::name C

構造方法重寫:

例子:

class P

{

public__construct()

{

echo“parent::construct”;

}

}

class D extends P

{

public__construct()

{

echo“self::construct”;

}

}

$o =new D;

輸出:self::construct

如果需要,強制執(zhí)行被重寫的父類方法,可以顯示的使用父類來調(diào)用相應的父類方法即可:

例子:

class P

{

public__construct()

{

echo“parent::construct”;

}

}

class D extends P

{

public__construct()

{

P::__construct();

echo“self::construct”;

}

}

$o =new D;

輸出:parent::construct self::construct

可以使用一個關鍵字,在類內(nèi),代替當前的父類

parent關鍵字

例子:

class P

{

public__construct()

{

echo“parent::construct”;

}

}

class D extends P

{

public__construct()

{

parent::__construct();

echo“self::construct”;

}

}

$o =new D;

如果說父類的構造需要相應的參數(shù),則需要在調(diào)用時,將父類構造方法需要的參數(shù)傳遞到方法內(nèi)。

例子:

class Goods

{

public $goods_name ;

public $goods_price;

public function __construct($name,$price)

{

$this->goods_name= $name;

$this->goods_price= $price;

}

}

class GoodsBook extends Goods

{

public $pages;

public function __construct($name,$price,$pages)

{

parent::__construct($name,$price);

$this->pages= $pages;

}

}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/871196.htmlTechArticlePhp面向?qū)ο?– 繼承和重寫 Php面向?qū)ο?– 繼承和重寫 繼承: php中,通過在類上,使用特殊的操作達到目的。 通過在定義類時,利用exte...
本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發(fā)現(xiàn)涉嫌抄襲或侵權的內(nèi)容,請聯(lián)絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

使用PHP的json_encode()函數(shù)將陣列或物件轉(zhuǎn)換為JSON字串 使用PHP的json_encode()函數(shù)將陣列或物件轉(zhuǎn)換為JSON字串 Nov 03, 2023 pm 03:30 PM

JSON(JavaScriptObjectNotation)是一種輕量級的資料交換格式,已成為Web應用程式之間資料交換的常用格式。 PHP的json_encode()函數(shù)可以將陣列或物件轉(zhuǎn)換為JSON字串。本文將介紹如何使用PHP的json_encode()函數(shù),包括語法、參數(shù)、傳回值以及具體的範例。語法json_encode()函數(shù)的語法如下:st

使用Python的__contains__()函數(shù)定義物件的包含操作 使用Python的__contains__()函數(shù)定義物件的包含操作 Aug 22, 2023 pm 04:23 PM

使用Python的__contains__()函數(shù)定義物件的包含操作Python是一種簡潔而強大的程式語言,提供了許多強大的功能來處理各種類型的資料。其中之一是透過定義__contains__()函數(shù)來實現(xiàn)物件的包含操作。本文將介紹如何使用__contains__()函數(shù)來定義物件的包含操作,並且給予一些範例程式碼。 __contains__()函數(shù)是Pytho

PHP 函數(shù)如何傳回物件? PHP 函數(shù)如何傳回物件? Apr 10, 2024 pm 03:18 PM

PHP函數(shù)可以透過使用return語句後接物件實例來傳回對象,從而將資料封裝到自訂結(jié)構中。語法:functionget_object():object{}。這允許創(chuàng)建具有自訂屬性和方法的對象,並以對象的形式處理資料。

如何將 MySQL 查詢結(jié)果陣列轉(zhuǎn)換為物件? 如何將 MySQL 查詢結(jié)果陣列轉(zhuǎn)換為物件? Apr 29, 2024 pm 01:09 PM

將MySQL查詢結(jié)果陣列轉(zhuǎn)換為物件的方法如下:建立一個空物件陣列。循環(huán)結(jié)果數(shù)組並為每一行建立一個新的物件。使用foreach迴圈將每一行的鍵值對賦給新物件的對應屬性。將新物件加入到物件數(shù)組中。關閉資料庫連線。

C++ 函式回傳物件時有什麼需要注意的? C++ 函式回傳物件時有什麼需要注意的? Apr 19, 2024 pm 12:15 PM

在C++中,函數(shù)傳回物件需要注意三點:物件的生命週期由呼叫者負責管理,以防止記憶體洩漏。避免懸垂指針,透過動態(tài)分配記憶體或返回物件本身來確保物件在函數(shù)返回後仍然有效。編譯器可能會最佳化傳回物件的副本生成,以提高效能,但如果物件是值語義傳遞的,則無需副本生成。

使用Python的__le__()函數(shù)定義兩個物件的小於等於比較 使用Python的__le__()函數(shù)定義兩個物件的小於等於比較 Aug 21, 2023 pm 09:29 PM

標題:使用Python的__le__()函數(shù)定義兩個物件的小於等於比較在Python中,我們可以透過使用特殊方法來定義物件之間的比較操作。其中之一就是__le__()函數(shù),它用來定義小於等於比較。 __le__()函數(shù)是Python中的一個魔法方法,並且是一種用於實現(xiàn)「小於等於」操作的特殊函數(shù)。當我們使用小於等於運算子(<=)比較兩個物件時,Python

原始碼探針:Python 中物件是如何被呼叫的? 原始碼探針:Python 中物件是如何被呼叫的? May 11, 2023 am 11:46 AM

楔子我們知道物件被創(chuàng)建,主要有兩種方式,一種是透過Python/CAPI,另一種是透過呼叫類型物件。對於內(nèi)建類型的實例物件而言,這兩種方式都是支援的,例如列表,我們即可以透過[]創(chuàng)建,也可以透過list(),前者是Python/CAPI,後者是呼叫類型物件。但對於自訂類別的實例物件而言,我們只能透過呼叫類型物件的方式來創(chuàng)建。而一個物件如果可以被調(diào)用,那麼這個物件就是callable,否則就不是callable。而決定一個物件是不是callable,就取決於其對應的型別物件中是否定義了某個方法。如

分析Java中堆疊和堆疊的不同以及它們的應用情景 分析Java中堆疊和堆疊的不同以及它們的應用情景 Feb 24, 2024 pm 11:12 PM

Java堆和棧的區(qū)別及應用場景解析,需要具體程式碼範例在Java程式中,堆和棧是兩個常用的資料結(jié)構,它們在記憶體中承擔不同的角色和功能。了解堆疊和堆疊的差異對於編寫高效的Java程式至關重要。首先,我們來看看Java堆。堆是一個用來儲存物件的區(qū)域,所有在程式中被建立的物件都被儲存在堆中。堆是在程式運行時動態(tài)分配和釋放記憶體的地方,它不受任何限制,並且可以根據(jù)需要自動

See all articles