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 相关文章推荐
JAVA/JSP学习系列之二
Oct 09 PHP
php中定义网站根目录的常用方法
Aug 08 PHP
php curl 登录163邮箱并抓取邮箱好友列表的代码(经测试)
Apr 07 PHP
屏蔽机器人从你的网站搜取email地址的php代码
Nov 14 PHP
探讨捕获php错误信息方法的详解
Jun 09 PHP
ThinkPHP分页类使用详解
Mar 05 PHP
php计算两个整数的最大公约数常用算法小结
Mar 05 PHP
PHP中is_file()函数使用指南
May 08 PHP
WordPress中用于获取搜索表单的PHP函数使用解析
Jan 05 PHP
CI框架(CodeIgniter)操作redis的方法详解
Jan 25 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 PHP
PHP 实现base64编码文件上传出现问题详解
Sep 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
PHP中for循环语句的几种变型
2006/11/26 PHP
从Web查询数据库之PHP与MySQL篇
2009/09/25 PHP
php递归函数中使用return的注意事项
2014/01/17 PHP
PHP实现的简单mock json脚本分享
2015/02/10 PHP
PHP单文件上传原理及上传函数的封装操作示例
2019/09/02 PHP
JavaScript 创建对象
2009/07/17 Javascript
在JS中如何调用JSP中的变量
2014/01/22 Javascript
推荐一款jQuery插件模板
2015/01/09 Javascript
Jquery中基本选择器用法实例详解
2015/05/18 Javascript
基于JavaScript实现div层跟随滚动条滑动
2016/01/12 Javascript
jquery实现图片列表鼠标移入微动
2016/12/01 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
你可能不知道的CORS跨域资源共享
2019/03/13 Javascript
js中async函数结合promise的小案例浅析
2019/04/14 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
小程序如何获取多个formId实现详解
2019/09/20 Javascript
python每隔N秒运行指定函数的方法
2015/03/16 Python
Python实现列表删除重复元素的三种常用方法分析
2017/11/24 Python
Python面向对象类的继承实例详解
2018/06/27 Python
WxPython实现无边框界面
2019/11/18 Python
python使用hdfs3模块对hdfs进行操作详解
2020/06/06 Python
Python图像阈值化处理及算法比对实例解析
2020/06/19 Python
Python项目跨域问题解决方案
2020/06/22 Python
python 从list中随机取值的方法
2020/11/16 Python
python中类与对象之间的关系详解
2020/12/16 Python
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
Linux内核产生并发的原因
2012/07/13 面试题
普罗米修斯教学反思
2014/02/06 职场文书
共产党员公开承诺书
2014/03/25 职场文书
财产公证书样本
2014/04/04 职场文书
毕业论文评语大全
2014/04/29 职场文书
保险专业求职信
2014/07/07 职场文书
股东合作协议书
2014/09/12 职场文书
2014幼儿园大班工作总结
2014/11/10 职场文书
2019求职信大礼包
2019/05/15 职场文书
深入理解以DEBUG方式线程的底层运行原理
2021/06/21 Java/Android