PHP 物件導向程式設計之繼承性

2021-09-24 13:29:04 字數 2923 閱讀 7919

可以有多層繼承,即乙個類可以繼承某乙個類的子類,如類 b 繼承了類 a,類c 又繼承了類 b,那麼類 c 也間接繼承了類 a。

# **

class a

class b extends a

<?php

// php是單繼承,乙個類只能有乙個父類

// 乙個類可以有多個子類

// 支援多層繼承

classa}

class

bextends

aclass

cextendsb$b

=newb(

);var_dump($b

);echo$b-

>

say();

echo"";

$c=newc()

;var_dump($c

);echo$c-

>

say(

);

<?php

class

person

public

function

say(

)public

function

eat(

)public

function

run()}

class

teacher

extends

person

}class

student

extends

person

}$teacher

=new

teacher

("zhangsan",30

,'male');

// $teacher -> say();

$teacher

->

teach()

;$teacher

->

learn()

;echo"";

$student

=new

student

("lisi",18

,'female');

// $student -> run();

$ student -

>

learn()

;

private

protected

public

在同一類中

可以可以

可以在子類中

不可以可以

可以在類的外部

不可以不可以

可以

<?php

class

person

public

functionp1(

)private

functionp2(

)protected

functionp3(

)public

function

test1()

}class

student

extends

person

}$person

=new

person

("zhangsan",18

,"male");

// echo $person -> name; // 公有的成員屬性在類的外部可以訪問

// echo $person -> age; // 私有的成員屬性在類的外部**不可以**直接訪問

// echo $person -> gender; // 受保護的成員屬性在類的外部**不可以**直接訪問

// $person -> p1(); // 公有的成員方法在類的外部可以訪問

// $person -> p2(); // 私的有成員方法在類的外部**不可以**直接訪問

// $person -> p3(); // 受保護的成員方法在類的外部**不可以**直接訪問

//// $student = new student("lisi", 20, "female");

// $student -> test();

//$person

->

test1()

;

# **

parent::__construct();

parent::fun();

<?php

class

person

public

function

say(

),我的年齡是:

,我的性別是:";

}}class

teacher

extends

person

// 重寫:就是宣告 乙個與父類中同名的方法

public

function

say()"

;}}class

student

extends

person

public

function

say()"

;}}$teacher

=new

teacher

("張三",30

,'男'

,'數學');

$teacher

->

say();

echo"";

$student

=new

student

("李四",18

,'女'

,'北大');

$student

->

say(

);

GO 物件導向 繼承性

首先我們需要定義父級的結構體和方法 然後在寫孩子的結構體和方法 從而就會有三種形式 在學到這一步貌似go的繼承比php的要簡單的多 go的繼承只需要把父級的結構體名直接放到裡邊就行 繼承後可以訪問父級的屬性和方法 也可以訪問自己的專有屬性 同時還擁有重寫父級方法 所有案例都配備有 直接扔進去就可以執...

C 物件導向程式設計的繼承性(二)

介面是物件導向中乙個非常重要的概念,而且,物件導向中的繼承性和多型性主要都是通過介面來體現的。1 介面概述 介面是一種用來定義程式的協議,它描述可屬於任何類或結構的一組相關行為,可以把它看成是實現一組類的模板。介面可由方法 屬性 事件和索引器或這4種成員型別的任何組合構成,但不能包含字段。類和結構可...

C 物件導向程式設計的繼承性(四)

程式中使用物件導向的繼承特性時,主要分為單繼承和多繼承兩種情況,下面分別進行介紹。1 單繼承 單繼承一般用於類之間的繼承,c 中的類只支援單繼承,實現單繼承時,使用 子類 基類 格式。下面通過乙個例項講解如何實現單繼承。例 建立乙個控制台應用程式,首先定義乙個language類,並在其中定義乙個st...