
批改狀態(tài):合格
老師批語:明白了接口, trait就非常不錯了, 多少學生全卡在這了
//定義一個trait
trait tSayName {
public static function sayName() {
return '我的名字叫小明';
}
}
//基類
class a {
public static function sayName() {
return '我的名字叫小紅';
}
}
//擴展類
class b extends a {
use tSayName;
}
//客戶端代碼
echo b::sayName();//trait在擴展類中的優(yōu)先級大于基類,如果擴展類中也定義了同名的函數,那么當前類中的同名方法的優(yōu)先級是最大的
//定義第一個trait
trait tA {
public static function sayName() {
return '我的名字叫小明';
}
}
//定義第二個trait
trait tB {
public static function sayFrom() {
return '我來自廣東';
}
}
//定義第三個trait
trait tC {
use tA, tB;//把多個類中用到的相同或者類似的方法寫到trait里就完事了
}
//工作類
class hello {
use tC; //相當于use tA, tB;
}
//客戶端代碼
echo hello::sayName(), hello::sayFrom();
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號