多态,重载,克隆
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title></head>
<body>
<?php
class Ren
{ public $name; public $sex; function Say() { echo "hello"; } function Ren() { } function __tostring() { echo "这个对象包含变量name和sex,一个Say方法"; } function __clone() //对象克隆的时候自动执行 { $this->name="李四"; //$this指复本(克隆出来的新对象) }}class China extends Ren{ function Say() { echo "你好"; }}
//多态
//概念:当父类引用指向子类实例的时候,由于子类对父类函数进行了重写,导致我们在使用该引用去调用相应的方法表现出的不同//条件:1.必须有继承//2.子类必须对父类的方法进行重写
$r = new Ren(); //$r代表Ren类的引用
$r1 = new china();//$r1代表china的引用
//Ren $r = new Ren();
//函数重载
//条件:1.函数名必须相同//2.函数里面参数的个数不同//如果个数相同,类型不同//php是弱类型语言,所以没有重载//php有可变参数的函数
//__tostring() 方法
//对象的克隆
$r = new Ren();
$r
$r1 = clone $r; //克隆对象
echo $r->name;echo $r1->name;var_dump($r);?></body></html>