博客列表 >PHP父类的继承和方法重写 2018年5月3日

PHP父类的继承和方法重写 2018年5月3日

墨雨的博客
墨雨的博客原创
2018年05月04日 12:12:562736浏览

父类Customer.php

客户类,将客户的名称、地址、电话、联系人等基本信息定义为类的属性,并创建call()方法用于电话回访。


实例

<?php

/*
 * 客户类
 */

/**
 * Description of Customer
 *
 * @author Dell
 */
class Customer
{
    protected $name;  //名称
    protected $address;  //地址
    protected $phone;  //电话
    protected $linkman; //联系人
    public function __construct($name,$address,$phone,$linkman)
    {
    $this->name = $name;    
    $this->address = $address;    
    $this->phone = $phone;    
    $this->linkman = $linkman;    
    }
    public function call()   //回访
    {
        echo '电话回访';
        
    }
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

子类RepairShops.php

客户群体中的修理厂类,继承了父类Customer.php的基本属性,同时新增了修理项目和用工人数2个属性,重写了父类方法call(),其中用parent::call()复用了父类方法。


实例

<?php

/*
 * 汽修厂类 继承 客户类
 */

/**
 * Description of RepairShops
 *
 * @author Dell
 */
class RepairShops extends Customer
{
    //创建查询器访问父类受保护的属性
    public function __get($name) {
        return $this->$name;
    }
    private $project; //维修项目
    private $repairman; //修理工人数
    public function __construct($name,$address,$phone,$linkman,$project,$repairman) {
       //调用父类构造器
        parent::__construct($name, $address, $phone, $linkman);
        $this->project = $project;
        $this->repairman = $repairman;
    }
    //重写父类方法
    public function call() {
        return parent::call().'.询问'.$this->project.'是不是要用'.$this->repairman.'个人?';
    }
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

调用实例m.php


实例

<?php

/* 
 * 类的继承与方法重载
 * 
 */

//使用自动加载器来加载类:(简写版)
spl_autoload_register(function($className){
    require './class/'.$className.'.php'; 
});


$repair = new RepairShops('冀东汽修','曹妃甸区海港路','03155555555','凌云','保养变速箱',4);
//父类中的属性
echo '名称: '.$repair->name.'<br>'; 
echo '地址: '.$repair->address.'<br>'; 
echo '电话: '.$repair->phone. '<br>';
echo '联系人: '.$repair->linkman. '<br>';
//在子类中扩展的属性
echo '项目:'.$repair->project.'<br>';
echo '人数:'.$repair->repairman.'<br>';

//重写了的方法
echo $repair->call().'<br>';

运行实例 »

点击 "运行实例" 按钮查看在线实例

运行效果和截图

草图.png


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议
天蓬老师2018-05-05 17:43:191楼
看到了曹妃甸,我笑了~~ 因为我也是半个唐山人