可以有多層繼承,即乙個類可以繼承某乙個類的子類,如類 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...