PHP面向对象之重写与重载
来源:互联网 发布:后醍醐天皇知乎 编辑:程序博客网 时间:2024/04/25 03:19
- <?php
- /***
- ====笔记部分====
- 重写/覆盖 override
- 指:子类重写了父类的同名方法
- 重载: overload
- 重载是指:存在多个同名方法,但参数类型/个数不同.
- 传不同的参数,调用不同的方法
- 但是在PHP中,不允许存在多个同名方法.
- 因此,不能够完成java,c++中的这种重载
- 但是,PHP的灵活,能达到类似的效果
- ***/
- /****
- 代码部分
- ****/
- class human{
- public function say($name){
- echo $name,' 吃了吗?<br />';
- }
- }
- class stu extends human{
- public function say(){
- echo '切克闹,卡猫百比<br />';
- }
- /*
- public function say($a,$b,$c){
- echo '哥仨好';
- }
- 报错:
- Fatal error: Cannot redeclare stu::say() in D:\wamp\www\php\61.php on line 28
- 在PHP中,不允许存在多个同名方法,没有重载概念这一说。
- */
- }
- $li=new stu();
- $li->say();
- $li->say('binghui');// 上面这个过程叫重写override!
- /*
- 结果:
- 切克闹,卡猫百比
- 切克闹,卡猫百比
- */
- //在PHP中模拟重载的方法
- class Calc {
- public function area() {
- // 判断一个调用area时,得到的参数个数
- $args = func_get_args();
- if(count($args) == 1) {
- return 3.14 * $args[0] * $args[0];
- } else if(count($args) == 2) {
- return $args[0] * $args[1];
- } else {
- return '未知图形';
- }
- }
- }
- $calc = new Calc();
- // 计算圆的页面
- echo $calc->area(10),'<br />';
- // 计算矩形的面积
- echo $calc->area(5,8);
- ?>
0 0
- PHP面向对象之重写与重载
- PHP面向对象之重写与重载
- php面向对象之重写与重载
- PHP面向对象之重写与重载
- PHP面向对象之重写与重载-129
- PHP面向对象编程之--多态:方法重载与重写
- PHP面向对象之方法重写与重载
- Java面向对象之重载和重写
- PHP面向对象之重载
- 面向对象概念 重载与重写(重写又称覆盖)
- php面向对象笔记6 类的重写和重载
- php面向对象 之 多态--重写覆盖
- PHP面向对象之方法重写
- php面向对象之重写(override)
- 面向对象方法重写与重载的区别
- 【设计模式】面向对象小结——重写与重载
- 面向对象重写(override)与重载(overload)区别
- 面向对象中的重写(override)与重载(overload)
- PHP面向对象之private权限控制
- JavaScript学习笔记——面向对象编程(OOP)
- 001_012 Python 字符串大小写转化
- PHP魔术方法之__call与__callStatic方法
- 华为机试题-----查找一个字符串的子字符串集
- PHP面向对象之重写与重载
- PHP中抽象类与接口的应用场景
- 计划学习python的高级编程
- Configure with Build, Host and Target
- lightOJ 1002:Country Roads
- 关于hive中iP地址映射地域调研
- 优秀博文地址
- 实例1.1:通过HWND获得CWnd指针
- 华为机试题---统计并输出每个字符在字符串中出现的次数