PHP重载方法分享
发布时间:2022-07-08 13:48:29 所属栏目:PHP教程 来源:互联网
导读:PHP重载方法 1.重载 Overload 子类改变父类的方法,为重载。 重载是一种覆盖性行为,会将以前的方法覆盖掉。 2.重载案例: ?php class EMBA_student // 声明EMBA学生类 { //用var来定义类的属性 var $no; //序号 var $name; // 姓名 var $gender; //性别 var
PHP重载方法 1.重载 Overload 子类改变父类的方法,为重载。 重载是一种覆盖性行为,会将以前的方法覆盖掉。 2.重载案例: <?php class EMBA_student // 声明EMBA学生类 { //用var来定义类的属性 var $no; //序号 var $name; // 姓名 var $gender; //性别 var $age; //年龄 //方法 //方法1 ,设定学生的信息方法 function set_data ($arr) { $this->no=$arr["no"]; $this->name=$arr["name"]; $this->gender=$arr["gender"]; $this->age=$arr["age"]; } // 方法2, 让学生年龄长大$i岁 function set_grow($i) { $this->age+=$i; } //方法3 ,输出学生信息的方法 function get_data() { echo "<br /> <b>长江商学院EMBA班学生信息</b><br /> "; echo"学号:$this->no<br />"; echo"姓名:$this->name<br />"; echo"性别:$this->gender<br />"; echo"年龄:$this->age<br />"; } } // 继承EMBA学生类,来创建一个EMBA方向类 class college_student extends EMBA_student{ var $department; //定义一个新的属性所在系 function change_department($new_department) //定义一个新的方法,更换所在系 { $this->department=$new_department; //让学员所在系变成参数系 } //重载父类的方法,设定学员的信息 function set_data($arr){ $this->no=$arr["no"]; $this->name=$arr["name"]; $this->gender=$arr["gender"]; $this->age=$arr["age"]; $this->department=$arr["department"]; } } //实例化一个对象 $s=new college_student; $arr=array("no"=>"1","name"=>"Qian Zhang","gender"=>"Female","age"=>"33","department"=>"商业营销"); $s->set_data($arr); // $s->department="商业营销"; 因为采用了函数的重载,所以不需要在这个地方为对象赋值了 echo"该学员所在专业为:$s->department<br />"; $s->change_department("哲学工商管理"); echo"该学员所在专业为:$s->department<br />"; $s->get_data(); ?> 结果: 该学员所在专业为:商业营销 该学员所在专业为:哲学工商管理 长江商学院EMBA班学生信息 学号:1 姓名:Qian Zhang 性别:Female 年龄:33 3.函数中,对数组键值的定义方式值得学习: class EMBA_student // 声明EMBA学生类 { //用var来定义类的属性 var $no; //序号 var $name; // 姓名 var $gender; //性别 var $age; //年龄 //方法 //方法1 ,设定学生的信息方法 function set_data ($arr) { $this->no=$arr["no"]; $this->name=$arr["name"]; $this->gender=$arr["gender"]; $this->age=$arr["age"]; } } 先定义属性,然后直接以[]来定义键名。 (编辑:西双版纳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |