首页 > 后端开发 > php教程 > PHP的抽象类

PHP的抽象类

不言
发布: 2023-03-24 20:38:01
原创
1688 人浏览过

这篇文章介绍的内容是关于PHP的抽象类,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

/*
抽象类的作用:

当接口用,当模板用
实现多态,生来就是当爸爸的
*/


// ===代码部分1===

// =用abstract写一个飞行器制造术= //

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

abstract class FlyIdea {    // 大力引擎

    public abstract function engine();    // 平衡舵

    public abstract function balance();

 

    /*

         注意:抽象方法中 不能有方法体

         下面这样写是错误的         public abstract function balance() {

 

         }

         报错如下:

         Fatal error: Abstract function FlyIdea::balance() cannot contain body

    */

}

 

/*

抽象类不能new 来实例化

$kongke = new FlyIdea();

 

报错如下:

Fatal error: Cannot instantiate abstract class FlyIdea

*/

登录后复制


// =用火箭解决发动机问题= //

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

abstract class Rocket extends FlyIdea {

 

    public function engine() {

        echo &#39;点燃火药,失去平衡。<br >&#39;;

    }

}class Fly extends Rocket {

    public function engine() {

        echo &#39;用力一扔<br >&#39;;

    }    public function balance() {

        echo &#39;两个纸翼保持平衡~~~~~~&#39;;

    }    public function start() {

        $this->engine();        for($i=0;$i<10;$i++) {            $this->balance();            echo &#39;平稳飞行<br >&#39;;

        }

    }

}$apache = new Fly();$apache->start();

登录后复制

/*
总结:

类前加 abstract 是抽象类
方法前加 abstract 是抽象方法

抽象类 不能 实例化
抽象方法 不能有 方法体

有抽象方法,则此类必是 抽象类
抽象类,内未必有抽象方法
*/


// ===代码部分2===

// =Facebook 多国语言欢迎页面= //

1

2

3

4

5

6

7

8

9

10

11

12

13

14

abstract class Welcome {

    public abstract function wel();}class china extends Welcome {

    public function wel() {

        echo &#39;你好,非死不可<br >&#39;;

    }

}class english extends Welcome {

    public function wel() {

        echo &#39;hi,welcome<br >&#39;;

    }

}class japan extends Welcome {

    public function wel() {

        echo &#39;搜达斯奈<br >&#39;;

    }

}$c = &#39;china&#39;; //english //japan$wel = new $c();$wel->wel();

登录后复制

/*
以后新增了其他国家语言,
只要新增一个新的welcome类即可.
*/
这里写图片描述

相关推荐:

php中抽象类和接口的区别

以上是PHP的抽象类的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
怎么学好php
来自于 1970-01-01 08:00:00
0
0
0
PHP扩展intl
来自于 1970-01-01 08:00:00
0
0
0
php数据获取?
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板