面向对象的静态和抽象

Posted 23滴雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象的静态和抽象相关的知识,希望对你有一定的参考价值。

  静态:

    关键字为:static

    静态成员与普通成员的区别:普通成员是属于对象的,为静态成员是属于类的。

class FenBi{
    public static $color;   //静态成员
    public $length;  //普通成员
    public static function test(){
        echo "长度为:{$this->length}";
    }
    public function ceshi(){
        echo "颜色为".FenBi::$color;
    }
}
FenBi::$color = "红色";  //赋值使用类名
$f = new FenBi();
$f->ceshi();

    静态的方法里面不能包含普通成员(没有对象,没办法调用普通成员);

    普通的方法里面可以包含静态成员。

 

  抽象:

    抽象类:更加抽象的一个类,无法直接实例化对象,主要做为父类存在;

    抽象方法:抽象的一个方法,不能直接调用;

    抽象关键字:abstract。

abstract class Ren{
    public abstract function test();
}
class China extends Ren{
    public function test(){
        echo "aa";
    }
}
$c = new China();

    接口:极度抽象的类,里面只能包含抽象方法,不能包含普通方法和成员变量。

//定义实现哪些功能
interface USB{
    public function read();
    public function write();
}
//具体实现方法
class ShuBiao implements USB{
    public function read(){
        echo "鼠标插入了";
    }
    public function write(){
        echo "给鼠标供电了";
    }
}

$s = new ShuBiao();
$s->read();

    接口一般还表示API:网络数据接口。

以上是关于面向对象的静态和抽象的主要内容,如果未能解决你的问题,请参考以下文章

面向对象

面向对象

面向对象之多态

php面向对象中的静态与抽象,接口

java 对象

Day06-面向对象编程