PHP 对象继承原理与简单用法示例


Posted in PHP onApril 21, 2020

本文实例讲述了PHP 对象继承原理与简单用法。分享给大家供大家参考,具体如下:

对象继承

继承已为大家所熟知的一个程序设计特性,PHP 的对象模型也使用了继承。继承将会影响到类与类,对象与对象之间的关系。

比如,当扩展一个类,子类就会继承父类所有公有的和受保护的方法。除非子类覆盖了父类的方法,被继承的方法都会保留其原有功能。

继承对于功能的设计和抽象是非常有用的,而且对于类似的对象增加新功能就无须重新再写这些公用的功能。

Note:

除非使用了自动加载,否则一个类必须在使用之前被定义。如果一个类扩展了另一个,则父类必须在子类之前被声明。此规则适用于类继承其它类与接口。

继承示例

<?php

class foo
{
  public function printItem($string) 
  {
    echo 'Foo: ' . $string . PHP_EOL;
  }
  
  public function printPHP()
  {
    echo 'PHP is great.' . PHP_EOL;
  }
}

class bar extends foo
{
  public function printItem($string)
  {
    echo 'Bar: ' . $string . PHP_EOL;
  }
}

$foo = new foo();
$bar = new bar();
$foo->printItem('baz'); // Output: 'Foo: baz'
$foo->printPHP();    // Output: 'PHP is great' 
$bar->printItem('baz'); // Output: 'Bar: baz'
$bar->printPHP();    // Output: 'PHP is great'

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

PHP 相关文章推荐
php内存缓存实现方法
Jan 24 PHP
CentOS安装php v8js教程
Feb 26 PHP
php通过array_push()函数添加多个变量到数组末尾的方法
Mar 18 PHP
解读PHP中的垃圾回收机制
Aug 10 PHP
ThinkPHP函数详解之M方法和R方法
Sep 10 PHP
php阿拉伯数字转中文人民币大写
Dec 21 PHP
php单链表实现代码分享
Jul 04 PHP
PHP面向对象多态性实现方法简单示例
Sep 27 PHP
PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
Apr 20 PHP
Yii2压缩PHP中模板代码的输出问题
Aug 28 PHP
PHP PDOStatement::nextRowset讲解
Feb 01 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
Dec 01 PHP
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
Apr 20 #PHP
ThinkPHP3.1.2 使用cli命令行模式运行的方法
Apr 14 #PHP
Laravel 框架控制器 Controller原理与用法实例分析
Apr 14 #PHP
Laravel 框架路由原理与路由访问实例分析
Apr 14 #PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
Apr 14 #PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 #PHP
PHP 自动加载类原理与用法实例分析
Apr 14 #PHP
You might like
thinkphp autoload 命名空间自定义 namespace
2015/07/17 PHP
jquery构造器的实现代码小结
2011/05/16 Javascript
jquery改变disabled的boolean状态的三种方法
2013/12/13 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
javascript带回调函数的异步脚本载入方法实例分析
2015/07/02 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
基于JavaScript实现 网页切出 网站title变化代码
2016/04/03 Javascript
javascript实现列表切换效果
2016/05/02 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
2017/07/22 jQuery
JS实现多物体运动的方法详解
2018/01/23 Javascript
父组件中vuex方法更新state子组件不能及时更新并渲染的完美解决方法
2018/04/25 Javascript
vue实现设置载入动画和初始化页面动画效果
2019/10/28 Javascript
vue实现pdf文档在线预览功能
2019/11/26 Javascript
详解node.js 事件循环
2020/07/22 Javascript
[01:02:38]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第二场 1月10日
2021/03/11 DOTA
Python和Perl绘制中国北京跑步地图的方法
2016/03/03 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
使用Python横向合并excel文件的实例
2018/12/11 Python
有趣的流行文化T恤、马克杯、手机壳和更多:Look Human
2019/01/07 全球购物
乌克兰巴士票购买网站:inBus
2021/03/12 全球购物
幼儿园校车司机的岗位职责
2014/01/30 职场文书
家长写给老师的建议书
2014/03/13 职场文书
摄影展策划方案
2014/06/02 职场文书
员工安全责任书范本
2014/07/24 职场文书
医德考评自我评价
2014/09/14 职场文书
婚前协议书标准版
2014/10/19 职场文书
2014年班级工作总结
2014/11/14 职场文书
2014年培训工作总结范文
2014/11/27 职场文书
小学班主任事迹材料
2014/12/17 职场文书
党员年度个人总结
2015/02/14 职场文书
2015年超市工作总结范文
2015/05/26 职场文书
分家协议书范本
2016/03/22 职场文书
Python函数式编程中itertools模块详解
2021/09/15 Python
叶县这家生产军用电台的兵工厂,人称“四机部”,走出一上将
2022/02/18 无线电
SpringBoot中获取profile的方法详解
2022/04/08 Java/Android
使用MybatisPlus打印sql语句
2022/04/22 SQL Server