继承实例:
<?php header("content-type:text/html;charset=utf-8"); class Student { public $name; // 学生姓名 public $subjectName; // 考试科目 public $time; //考试时间 private $grade; // 考试成绩 public function __construct($name) { $this->name = $name; } public function setGrade($grade){ if(is_numeric($grade)&&$grade>0.0){ $this->grade = $grade; } } public function test($subjectName,$time){ if(!empty($subjectName)&&!empty($time)){ $this->subjectName = $subjectName; $this->time = $time; } echo $this->name."刚刚经历了".$time."分钟".$subjectName."的考试</br>"; } public function showGrade(){ var_dump($this); if(!empty($this->subjectName)&&!empty($this->time)&&is_numeric($this->grade)&&$this->grade>0.0){ echo $this->name ."的".$this->subjectName.'是科目,成绩是:'.$this->grade."<br/>"; }else{ echo "系统还未录成绩!<br/>"; } } } // 小学生 继承student class Pupil extends Student { } $pupil = new Pupil("小花"); $pupil->test("数学","120分钟"); $pupil->setGrade(99); $pupil->showGrade(); echo "<hr>"; // 大学生 class CollegeStudent extends Student{ } $collegeStudent = new Pupil("大华"); $collegeStudent->test("java编程思想","200分钟"); $collegeStudent->setGrade(55); $collegeStudent->showGrade();
结果
说明:
根本作用:解决代码复用性,减少冗余代码。