首页 > 编程笔记 > PHP笔记 阅读:15

PHP中的abstract抽象类(附带实例)

抽象类只能作为父类使用,因为抽象类不能被实例化。抽象类使用关键字 abstract 来声明,具体的语法格式如下:
abstract class抽象类名称{
    //抽象类的成员变量列表
    abstract function成员方法1(参数);  //抽象类的成员方法
    abstract function成员方法2(参数);  //抽象类的成员方法
}
抽象类和普通类的主要区别在于抽象类的方法没有方法内容,而且至少包含一个抽象方法。另外,抽象方法也必须使用关键字 abstract 来修饰,抽象方法后必须有分号。
<?php
abstract class MyObject{      // 定义抽象类
    abstract function service($GetName,$price,$num);
}

class MyBook extends MyObject{
    function service($GetName,$price,$num) {
        echo '您购买的商品是'.$GetName.',商品的价格是:'.$price.' 元。';
        echo '您购买的数量为:'.$num.' 本。';
    }
}

class MyComputer extends MyObject{    // 继承抽象类
    function service($GetName,$price,$num) {
        echo '您购买的商品是'.$GetName.',该商品的价格是:'.$price.' 元。';
        echo '您购买的数量为:'.$num.' 本。';
    }
}

$book = new MyBook();
$computer = new MyComputer();
$book -> service('《C语言入门教程(超级详细,25万字精华)》',199.9,100);
echo '<p>';
$computer -> service('《C++入门教程,C++基础教程(更新完毕)》',49,10);
?>
运行结果为:

您购买的商品是《C语言入门教程(超级详细,25万字精华)》,商品的价格是:199.9 元。您购买的数量为:100 本。

您购买的商品是《C++入门教程,C++基础教程(更新完毕)》,该商品的价格是:49 元。您购买的数量为:10 本。

相关文章