您的位置 首页 php

web开发之-PHP面向对象(4)

上面我们讲了类的基本使用,这次讲一下抽象类。

抽象类

我们每个人多多少少都会一项技能,比如张三会打篮球,李四会踢足球,那么我这个把这个技能的行为单独抽离出来,放到一个抽象类里,其他类实现这个类的时候,需要实现这个抽象的方法。例如:

 abstract  class Skill{
    abstract  function doSkill();
}

class Zhangsan extends Skill{
    public function doSkill(){
        echo "我是张三,会打篮球".PHP_EOL;
    }
}
class Lisi extends Skill{
    public function doSkill(){
        echo "我是李四,会踢足球".PHP_EOL;
    }
}
$zhangSan = new Zhangsan();
$liSi = new Lisi();
$zhangSan->doSkill();
$liSi->doSkill();  

以上会输出如下内容:

 我是张三,会打篮球
我是李四,会踢足球  

注:抽象类,就是把某些人能做的事情和拥有的共同的属性放到一个抽象类中,比如上面代码中的Skill类,并且抽象类的类名必须前面使用abstract修饰,且里面的方法必须至少一个使用abstract修饰;抽象类是不能被直接被实例化的,如果你new Skill()会报错;继承抽象类的类必须实现抽象类中的abstract方法,比如上方的Zhangsan类继承(extends)Skill类,所以,必须在类中实现doSkill这个抽象方法!

今天就先写到这里,大家把这个面向对象前面这些先消化一下,这些都是重点,明天我会继续更新,也是OOP中的重点中的重点,即OOP三大特征:封装,继承,多态 的讲解!最重要的是多态,这里在很多系统架构中都会用到,说难其实也不难!就是一个用法而已![奸笑]

文章来源:智云一二三科技

文章标题:web开发之-PHP面向对象(4)

文章地址:https://www.zhihuclub.com/149919.shtml

关于作者: 智云科技

热门文章

网站地图