面向对象---抽象类、接口

abstract class dongwu//抽象类--不能实例化,可以被继承
{    
    public $dong;
    public $jiao;
    
    function chi()
    {    
        echo "1";
        }
    function shui()
    {
        }    
    }
$r=new dongwu();
var_dump($r);//输出报错

class niao extends dongwu
{    function chi()
    {
        echo "22";
        parent::chi();
        }
    }
$r=new niao();
$r->chi();
//接口--极度抽象类
interface USB//关键字 interface 后面没有class
{    
    function read();
    function write();//方法没有函数体
    }
class mouse implements USB//实现接口使用的关键字implements
{    function read()
    {
        echo "hh";
        }
    function write()
    {
        echo "你是"; //实现接口的子类必须要实现接口的每个方法
        }
} 
class keys implements USB
{
    function read()
    {    echo "接入了键盘";
        }
    function write()
    {
        echo "给键盘充电";
        }    
}
$r=new mouse();
$r->read();
$r=new keys();
$r->read();
原文地址:https://www.cnblogs.com/jinshui/p/5567119.html