• php第七节课


    多态,重载,克隆

    <!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>

     

  • 相关阅读:
    在Selenium自动化中查找损坏的链接
    WebDriverManager
    在TestNG中重试失败的测试
    算法:汉诺塔
    Java 多线程
    spring ioc原理(看完后大家可以自己写一个spring)
    Apache与Nginx的区别
    Apache与Nginx的区分比较
    Java 设计模式
    Java 理论与实践: 正确使用 Volatile 变量
  • 原文地址:https://www.cnblogs.com/xiongxiaobai/p/5442816.html
Copyright © 2020-2023  润新知