1、覆写
PHP继承父类之后,可以覆写父类的函数
class ShopProduct{ // 声明类
public $title; // 声明属性
public $producerMainName;
public $producerFirstName;
public $price;
function __construct($title,$firstName,$mainName,$price){
$this -> title = $title; // 给属性 title 赋传进来的值
$this -> producerFirstName= $firstName;
$this -> producerMainName = $mainName;
$this -> price= $price;
}
}
class CdProduct extends ShopProduct {
public $playLenth;
function __construct($title,$firstName,$mainName,$price,$playLenth){
//覆写 需要用到的关键字parent::
parent::__construct($title,$firstName,$mainName,$price);
$this -> playLenth= $playLenth;
}
}
当覆写父类中其他方法时,直接利用父类方法中已存在的方法,不需要码重复的代码
// 父类:ShopProduct
function getSummaryLine(){
$base = "{$this->title}( {$this->producerMainName},";
$base .= "{$this->producerFirstName} )";
return $base;
}
// 子类:CdProduct
function getSummaryLine(){
$base = parent::getSummaryLine();
$base .= ":playing time - {$this->playLength} )";
return $base;
}
总结:一般父类的所有的方法会被置为public,属性则被private,protected,这样的类会比较完善