PHP abstract 抽象类定义与用法示例


Posted in PHP onMay 29, 2018

本文实例讲述了PHP abstract 抽象类定义与用法。分享给大家供大家参考,具体如下:

PHP抽象类应用要点:

1.定义一些方法,子类必须完全实现这个抽象中所有的方法

2.不能从抽象类创建对象,它的意义在于被扩展

3.抽象类通常具有抽象方法,方法中没有大括号

PHP抽象类应用重点:

1.抽象方法不必实现具体的功能,由子类来完成

2.在子类实现抽象类的方法时,其子类的可见性必须大于或等于抽象方法的定义

3.抽象类的方法可以有参数,也可以为空

4.如果抽象方法有参数,那么子类的实现也必须有相同的参数个数

示例:

//作用:抽象类不实现具体方法,具体方法由子类完成。
//定义抽象类 abstract
abstract class A{
  //abstract 定义抽象类的方法,这里没有花括号。子类必须实现这个抽象方法。
  abstract public function say();
  //抽象类可以有参数
  abstract public function eat($argument);
  //在抽象类中可以定义普通的方法。
  public function run(){
    echo '这是run方法';
  }
}
class B extends A{
  //子类必须实现父类的抽象方法,否则是致命的错误。
  public function say(){
    echo '这是say方法,实现了抽象方法';
  }
  public function eat($argument){
    echo '抽象类可以有参数 ,输出参数:'.$argument;
  }
}
$b =new B;
$b->say();
echo '<br>';
$b->eat('apple');
echo '<br>';
$b->run();

运行结果:

这是say方法,实现了抽象方法
抽象类可以有参数 ,输出参数:apple
这是run方法

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 文件上传代码(限制jpg文件)
Jan 05 PHP
查找mysql字段中固定字符串并替换的几个方法
Sep 23 PHP
深入phpMyAdmin的安装与配置的详细步骤
May 07 PHP
PHP实现获取客户端IP并获取IP信息
Mar 17 PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 PHP
Yii CGridView用法实例详解
Jul 12 PHP
PHP支付系统设计与典型案例分享
Aug 02 PHP
php插入含有特殊符号数据的处理方法
Nov 24 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
thinkPHP5框架实现多数据库连接,跨数据连接查询操作示例
May 29 PHP
PHP实现微信公众号验证Token的示例代码
Dec 16 PHP
PHP+MySql实现一个简单的留言板
Jul 19 PHP
thinkPHP中U方法加密传递参数功能示例
May 29 #PHP
在Laravel中使用DataTables插件的方法
May 29 #PHP
ThinkPHP实现的rsa非对称加密类示例
May 29 #PHP
PHP中实现中文字串截取无乱码的解决方法
May 29 #PHP
php实现表单提交上传文件功能
May 28 #PHP
PHP封装的非对称加密RSA算法示例
May 28 #PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
May 28 #PHP
You might like
基于mysql的论坛(7)
2006/10/09 PHP
PHPWind 发帖回帖Api PHP版打包下载
2010/02/08 PHP
php中设置多级目录session的问题
2011/08/08 PHP
php笔记之:php数组相关函数的使用
2013/04/26 PHP
php实现与erlang的二进制通讯实例解析
2014/07/23 PHP
PHP创建/删除/复制文件夹、文件
2016/05/03 PHP
php截取视频指定帧为图片
2016/05/16 PHP
PHP微信API接口类
2016/08/22 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
Javascript hasOwnProperty 方法 &amp; in 关键字
2008/11/26 Javascript
JS弹出对话框返回值代码(asp.net后台)
2010/12/28 Javascript
你必须知道的Javascript知识点之&quot;字面量和对应类型&quot;说明介绍
2013/04/23 Javascript
函数式 JavaScript(一)简介
2014/07/07 Javascript
javascript日期格式化方法小结
2015/12/17 Javascript
jQuery插件EasyUI获取当前Tab中iframe窗体对象的方法
2016/08/05 Javascript
Javascript json object 与string 相互转换的简单实现
2016/09/27 Javascript
jquery+Jscex打造游戏力度条
2020/09/12 Javascript
jQuery 插件封装的方法
2016/11/16 Javascript
bootstrap警告框使用方法解析
2017/01/13 Javascript
微信小程序开发之从相册获取图片 使用相机拍照 本地图片上传
2017/04/18 Javascript
js中的 || 与 &amp;&amp; 运算符详解
2018/05/24 Javascript
微信小程序template模版的使用方法
2019/04/13 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
python3实现基于用户的协同过滤
2018/05/31 Python
在PyTorch中Tensor的查找和筛选例子
2019/08/18 Python
python绘制随机网络图形示例
2019/11/21 Python
Python3 读取Word文件方式
2020/02/13 Python
html2canvas截图空白问题的解决
2020/03/24 HTML / CSS
kmart凯马特官网:美国最大的打折零售商和全球最大的批发商之一
2016/11/17 全球购物
YOOX台湾:意大利奢侈品电商
2018/10/13 全球购物
英语自荐信范文
2013/12/11 职场文书
学校课外活动总结
2014/05/08 职场文书
交通事故协议书范文
2014/10/23 职场文书
销售员自我评价
2015/03/11 职场文书
2016年重阳节慰问信
2015/12/01 职场文书
纪检干部学习心得体会
2016/01/23 职场文书