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 相关文章推荐
第八节 访问方式 [8]
Oct 09 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
Dec 29 PHP
Zend framework处理一个http请求的流程分析
Feb 08 PHP
一个简单的网页密码登陆php代码
Jul 17 PHP
PHP常用开发函数解析之数组篇[未完结]
Jul 30 PHP
php中调用其他系统http接口的方法说明
Feb 28 PHP
PHP引用(&amp;)各种使用方法实例详解
Mar 20 PHP
PHP5.2下preg_replace函数的问题
May 08 PHP
深入浅出php socket编程
May 13 PHP
PHP基于单例模式编写PDO类的方法
Sep 13 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
Feb 28 PHP
Laravel向公共模板赋值方法总结
Jun 25 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
php 模拟POST|GET操作实现代码
2010/07/20 PHP
PHP的范围解析操作符(::)的含义分析说明
2011/07/03 PHP
PHP 常用的header头部定义汇总
2015/06/19 PHP
Visual Studio中的jQuery智能提示设置方法
2010/03/27 Javascript
JS实现模仿微博发布效果实例代码
2013/12/16 Javascript
淘宝网提供的国内NPM镜像简介和使用方法
2014/04/17 Javascript
深入学习jQuery Validate表单验证
2016/01/18 Javascript
超赞的jQuery图片滑块动画特效代码汇总
2016/01/25 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
jQuery表单对象属性过滤选择器实例详解
2016/09/13 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
Bootstrap表单简单实现代码
2017/03/06 Javascript
百度地图JavascriptApi Marker平滑移动及车头指向行径方向
2017/03/13 Javascript
微信小程序表单验证错误提示效果
2017/05/19 Javascript
layui多图上传实现删除功能的例子
2019/09/23 Javascript
《javascript设计模式》学习笔记三:Javascript面向对象程序设计单例模式原理与实现方法分析
2020/04/07 Javascript
VUE实现吸底按钮
2021/03/04 Vue.js
python数组复制拷贝的实现方法
2015/06/09 Python
Pycharm学习教程(3) 代码运行调试
2017/05/03 Python
儿童python练习实例
2018/05/27 Python
Python装饰器基础概念与用法详解
2018/12/22 Python
python实现的汉诺塔算法示例
2019/10/23 Python
10个Python面试常问的问题(小结)
2019/11/20 Python
解决python虚拟环境切换无效的问题
2020/04/30 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
HTML5 语音搜索只需一句代码
2013/01/03 HTML / CSS
线程的基本概念、线程的基本状态以及状态之间的关系
2012/10/26 面试题
请说出以下代码输出什么
2013/08/30 面试题
军训心得体会
2013/12/31 职场文书
运动会广播稿400字
2014/01/25 职场文书
《浅水洼里的小鱼》听课反思
2014/02/28 职场文书
个人纪律作风整改措施思想汇报
2014/10/12 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
党员廉政准则心得体会
2016/01/20 职场文书
PyTorch 如何自动计算梯度
2021/05/23 Python
python字符串的多行输出的实例详解
2021/06/08 Python