Blogger Information
Blog 43
fans 3
comment 1
visits 30227
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
类属性类自动加载与类继承+2018年5月5日12时47分
KongLi的博客
Original
748 people have browsed it

类的属性创建,类属性的初始化、以及类的继承跟子类为基类添加属性初始化,并且重写基类中的方法

具体如下:


基类:

<?php
/医院
 * Created by PhpStorm.
 * User: John
 * Date: 2018/5/5
 * Time: 11:42
 */

//汽车类
class Cart
{
    //创建受保护的属性
    protected $type; //类型
    protected $brands; //品牌
    protected $speed; //时速

    //添加构造方法
    public function __construct($type,$brands,$speed)
    {
        //初始化属性
        $this->type = $type;
        $this->brands = $brands;
        $this->speed = $speed;
    }

    //创建公共运输方法
    public function transport()
    {
        return '煤运';
    }
}


子类:

<?php
/医院
 * Created by PhpStorm.
 * User: John
 * Date: 2018/5/5
 * Time: 11:53
 */

//运输车类,继承汽车类
class TransportCart extends Cart
{
    //为类型创建取值方法
    public function __get($name)
    {
        return $this->$name;
    }

    //为基类增加属性
    private $colour; //颜色
    private $seat; //座位

    //调用基类的构造方法对当前属性进行初始化,并重写
    public function __construct($type, $brands, $speed,$colour,$seat)
    {
        //调用的是基类的构造方法初始化
        parent::__construct($type, $brands, $speed);

        //初始化子类属性
        $this->colour=$colour;
        $this->seat=$seat;
    }

    //重写基类中的方法,给它添加多功能
    public function transport()
    {
        //返回基类中的结果,并且子类中的结果也一并返回
        return parent::transport().','.'运土'; // TODO: Change the autogenerated stub
    }

}


测试类:

使用匿名函数自动添加类实现引用

<?php
/医院
 * Created by PhpStorm.
 * User: John
 * Date: 2018/5/5
 * Time: 12:00
 */

//使用匿名函数自动加载类
spl_autoload_register(function ($className){
    require $className.'.php';
});

$transports = new TransportCart('大卡车','东风','200km/h','红色','4位');

//获取受保护的属性并输出
echo '类型:' . $transports->type.'<br>';
echo '品牌:' . $transports->brands.'<br>';
echo '时速:' . $transports->speed.'<br>';
echo '颜色:' . $transports->colour.'<br>';
echo '限座:' . $transports->seat.'<br>';

//在子类中调用基类中的方法
echo '这辆车的工作是:'.$transports->transport();


结果:

QQ截图20180505124717.png

Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post