PHP中的函数重载
函数重载是一项功能,它允许创建多个名称相似的方法,这些方法在其作为参数接受的输入参数的类型上彼此不同。
例子
现在让我们看一个实现函数重载的例子:<?php
class Shape {
const PI = 3.142 ;
function __call($name,$arg){
if($name == 'area')
switch(count($arg)){
case 0 : return 0 ;
case 1 : return self::PI * $arg[0] ;
case 2 : return $arg[0] * $arg[1];
}
}
}
$circle = new Shape();
echo $circle->area(3);
$rect = new Shape();
echo $rect->area(8,6);
?>
输出量9.42648
PHP中的函数重写
在函数覆盖中,父类和子类具有相同的函数名称,并带有参数数目
例子
现在让我们看一个实现功能覆盖的示例-<?php
class Base {
function display() {
echo "\n基类函数声明为final!";
}
function demo() {
echo "\n基类函数!";
}
}
class Derived extends Base {
function demo() {
echo "\n派生类函数!";
}
}
$ob = new Base;
$ob->demo();
$ob->display();
$ob2 = new Derived;
$ob2->demo();
$ob2->display();
?>
输出量基类函数!
基类函数声明为final!
派生类函数!
基类函数声明为final!