探讨方法的重写(覆载)详解

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
 class Cart{
  public function Cart(){
   echo "正在调用Cart()<br />";
  }
  public function doSomething(){
   echo "正在调用doSomethimg()<br />";
  }
 }
 class Named_Cart extends Cart{
  function Named_Cart(){
   echo "正在调用Named_Cart()<br />";
  }
  function doSomething(){
   echo "正在调用Named_Cart::doSomething()<br />";
  }
 }
$myCart=new Cart();
$myCart->doSomething();
$myNamed_Cart=new Named_Cart();
$myNamed_Cart->doSomething();
?>

在方法覆盖时,务必要使用与原始方法相同的约定,包括参数要一致。属性覆盖也遵循相同的约定。
在覆盖基类的方法后,使用parent关键字仍然可以调用基类的doSomething()方法,而非当前类中的doSomething()方法。

相关文章

php实现删除指定目录下相关文件的方法

本文实例讲述了php实现删除指定目录下相关文件的方法。分享给大家供大家参考。具体实现方法如下: 通常来说在php中删除文件最简单的方法就是直接使用unlink命令,而对于需要删除指定目录...

关于BIG5-HKSCS的解决方法

非常苦悶地發現,原來一直困擾的HKSCS問題PHP一直也支持。只不過名稱不叫HK-SCS,叫BIG5-HKSCS。 以下是HK增補字符集的解決方案: HTML頁面設為UTF-8, 寫入數...

php中call_user_func函数使用注意事项

本文实例讲述了php中call_user_func函数使用注意事项。分享给大家供大家参考。具体分析如下: call_user_func函数的注意事项:parse error: synta...

PHP中用header图片地址 简单隐藏图片源地址

复制代码 代码如下:<?php        $path=$_GET["path"];  ...

PHP 循环列出目录内容的函数代码

复制代码 代码如下: function list_files($dir) { if(is_dir($dir)) { if($handle = opendir($dir)) { while...