PHP面向对象2

继承
父类(基类)  子类(派生类)
子类可以继承父类的一切
特点:单继承。 一个父类可以派生多个子类,一个子类只能有一个父类。
重写:子类对付类的方法进行重写(override)
重载:overload  (PHP里面不存在,在强类型语言里面存在)                                 
class Ren{
    public $name;
    public function say(){
        echo "人在江湖飘<br>";
    }
}
class China extends Ren{
    public function say(){
        parent::say();
        echo "哪能不挨刀<br>";
    }
}
class America extends Ren{
    public function say(){
        echo "一刀砍死你";
    }
}
$c = new China();
$c->say();
$a = new America();
$a->say();
多态:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,所以该引用在调用
相应方法时表现出的不同形态成为多态。
运行多态(重写override)和编译多态(重载overload)

抽象类

抽象类
不能被实例化  只能作为父类使用
只要是包含抽象方法的类必须是抽象类
abstract class Ren{
    public function say();
}

接口
 第一层意思是面向对象。第二层意思是,API:网络上所提供的数据服务

interface IUSB{
    public function read();
    public function write();
}
class ShuBiao implements IUSB{
    public function read(){
        echo "鼠标能用了";
    }
    public function write(){
        echo "向鼠标返回数据";
    }
}
$s = new ShuBiao();
$s->read();

静态
普通成员:属于对象的
静态成员:属于类的
普通方法里面可以包含静态变量
静态方法里面不能包含普通成员

、class FenBi{
    public $cd;
    public static $ys; //静态成员变量
}
$f = new FenBi();
$f->cd;

echo FenBi::$ys = "黄色";    //调用静态成员

原文地址:https://www.cnblogs.com/sunzhenkun/p/7439564.html