静态抽象

//静态
//普通成员:属于对象
//静态成员:属于类的
//关键字:static
/*class fenbi
{
public $length;
public static $color="红";
public static function test()
{
echo "静态成员方法".self::$color; 静态中不能调用普通成员的
}
public function ceshi()
{
echo self::$color;
}

}

$f=new fenbi();
$f->length;//普通成员调用方式
//fenbi::$color;//静态成员调用方式
//fenbi::test();
$f->ceshi();*/
//抽象
//关键字:abstract
//抽象类由于过于抽象不能被实例化,作为父累存在
//子类要么实现父类的函数,要么自己变成抽象类(抽象方法里面不能包含函数体,其具体功能在子类里面通过重写实现)
//包含抽象方法的类一定是抽象类
/*abstract class dongwu
{
public $name;
abstract public function test();//这里面不能用函数其可以在子类中实现


}
class dog extends dongwu
{
public function test()
{
echo "重写了";
}
}
$d=new dog();
var_dump($d);*/
//接口 极度抽象的类
//接口里边没有成员变量
//接口里面的所有成员函数全部为抽象的
interface IUSB//网络服务,接口
{
public function read();//读的方法
public function write();//写的方法
}
class shubiao implements IUSB
{
public function read()
{
echo "鼠标插入了";
}
public function write()
{
echo "写东西";
}
}
$f=new shubiao();
$f->read();

原文地址:https://www.cnblogs.com/douchenchen/p/6737381.html