博主信息
博文 41
粉丝 0
评论 0
访问量 36676
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
0614作业2019年6月19日17点01分
Viggo的博客
原创
763人浏览过

创建一个学生类,包含学生的姓名、性别、年龄、成绩、。

姓名和性别是public 年龄是 protected 成绩是 private

实例

<?php

class student
{
    public $name;
    public $gender;
    protected $age;
    private $grade;

    public function __construct($name,$gender,$age,$grade)
    {
        $this->name = $name;
        $this->gender = $gender;
        $this->age = $age;
        $this->grade = $grade;
    }

    public function getInfo()
    {
        $res = '学生信息';
        $res .= '<br>姓名: '.$this->name;
        $res .= '<br>性别: '.$this->gender;
        $res .= '<br>年龄: '.$this->age;
        $res .= '<br>成绩: '.var_export($this->grade,true);
        echo $res;
    }

//    private 私有成员属性
    public function getGrade($ver)
    {
        return $ver === '梁伟' ? var_export($this->grade,true) : '你没有权限查看';

    }
}

$info = new student('梁伟','男',34,[80,90,95]);
echo $info->getInfo();
//此时无法用 $info->grade 访问  protected private 私有成员属性; private $grade可以用提供的方法来访问
echo '<br>';
echo $info->getGrade('梁伟');//必须要提供正确的参数才可以访问


echo '<br>';
//------------------------------------------------------------------------------


class student1 extends student
{
//    新成员属性
    public $height;

//    重写父类的构造函数
    public function __construct($name, $gender, $age, $grade,$height)
    {
        parent::__construct($name, $gender, $age, $grade);
        $this->height = $height;
    }

//    重写父类的方法 名称与父类相同将会重写父类同名的方法
    public function getInfo()
    {
//        调用父类
        parent::getInfo(); // TODO: Change the autogenerated stub
//        新增加
        echo $this->height;
    }

    public function getGrade($ver)
    {
//        也可以改写父类定义的private属性返回的方法 利用调用父类的私有方法
        return $ver === '小明' ? parent::getGrade('梁伟') : '1你没有权限查看';
//        return parent::getGrade($ver); // TODO: Change the autogenerated stub
    }
}

$extStu = new student1('小明','男',18,[40,50,60],'140cm');
$extStu->getInfo();
//调用子类改写的私有属性成员方法
echo '<br>'.$extStu->getGrade('小明');


运行实例 »

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


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系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+教程免费学