3、面向对象-继承-多态

1、继承
    子类可以继承父类的一切,一个子类只能有一个父类,一个父类可以有多个子类
    //父类
class Ren{
    public $name;
    public $sex;
    public $yuyan;
 
    function Say()    {
        echo $this->name."正在讲话!";
    }
}
 
//美国人的子类
class America extends Ren{
    public $ziben;
 
    //子类对父类的方法重写
    function Say()    {
        parent::Say(); //调用父类的Say()方法
        echo "hello !";
    }
}
//中国人的子类
class China extends Ren{
    public $shehui;
    public $wumai;    
 
    //对父类方法重写
    function Say()    {
        echo "你好!";
    }
}
 
$c = new China();
$c->Say();
 
 
 
 
2、多态
    多态的概念:当父类的引用指向子类实例的时候,由于子类对父类的方法进行了重写,所以当父类的引用调用相应的方法时表现出来的不同
    多态条件:1、必须继承。2、子类要对父类的方法进行重写。3、父类的引用指向子类的实例
    Ren r = new China();
    r->Say();
 
    r = new Amreica();
    r->Say();
    r就是父类的引用,指向不同的实例,调用相同方法表现出来的不同
原文地址:https://www.cnblogs.com/yongjiapei/p/5565123.html