博主信息
博文 28
粉丝 0
评论 0
访问量 21145
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
2018-09-03继承
阿小的博客
原创
730人浏览过

实例

<?php
//对象三大特征:继承封装,多态
//继承是代码复用的手段,关键字extends

//父类
class Demo
{
    public $name;
    protected $age;
    private $sex;
    const SITE_NAME = 'PHP中文网';
    
    public function __construct($name,$age)
    { 
        $this->name = $name;
        $this->age = $age;
      
    }
    
//     public function __get($name)
//     {
//         if(isset($this->$name)){
//             return $this->$name;
//         }
//         return '非法属性';
//     }
}

//子类
class Demo_1 extends Demo
{
    private $salary;
    //子类中的常量可以重写
    const SITE_NAME = 'PHP.cn';
    //子类的构造方法必须将父类的构造方法重新声明一遍 
    //将父类的方法重写-多态
    public function __construct($name, $age,$salary)
    {
        $this->salary = $salary;
        //访问父类关键字parent
        parent::__construct($name, $age);
    }
    
    public function __get($name)
    {
        if(isset($this->$name)){
            return $this->$name;
        }
        return '非法属性';
    }
}

$demo_1 = new Demo_1('Peter', 28,8000);
echo $demo_1->name.'<br>';
echo $demo_1->age.'<br>';   //私有属性,只能在父类和子类中使用,外部不可使用
echo $demo_1->show.'<br>';     //属性不存在时自动调用__get()方法
echo $demo_1->salary.'<br>';
echo Demo::SITE_NAME.'<br>';
echo Demo_1::SITE_NAME.'<br>';

运行实例 »

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


批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学