位置: 编程技术 - 正文

PHP面向对象详解(三)(php面向对象实例)

编辑:rootadmin

推荐整理分享PHP面向对象详解(三)(php面向对象实例),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php面向对象编程,php面向对象实例,php 面向对象,php 面向对象,php面向对象是什么意思,php面向对象和面向过程,php面向对象是什么意思,php 面向对象,内容如对您有帮助,希望把文章链接给更多的朋友!

面向对象 对象概念是面向对象技术的核心。在显示世界里我们所面对的事情都是对象,如计算机、电视机、自行车等。在面向对象的程序设计中,对象是一个由信息及对信息进行处理的描述所组成的整体,是对现实世界的抽象.

对象的主要三个特性

对象的行为:可以对 对象施加那些操作,开灯,关灯就是行为。对象的形态:当施加那些方法是对象如何响应,颜色,尺寸,外型。对象的表示:对象的表示就相当于身份证,具体区分在相同的行为与状态下有什么不同。

面向对象模型

面向对象的概念:

oop(面向对象的编程)它能是其代码更加简洁易于维护并且具有更强的可重性

1、PHP面向对象(三)

四、OOP的高级实践

4.3 Static-静态成员

注意这里static的位置,以及,方法内的::

调用的方法也有所变动。

也就是像之前说的,静态成员就是个常量,所以不针对某个具体的对象(不受具体对象的约束)——基于此,定义&赋值&调用都不需要具体的对象参与。

内部调用要用self/static::$...

外部调用,类名::

用处就是所有的对象共用的数据。

--如果内部调用时,变量在父类中

比如说,在上述例子中,父类human中写这么一句话

public static $aaa="dafdfa";

然后在子类nbaplayer中,调用父类的静态成员时,要

echo parent::$aaa;

而外部调用,按照上面说的,类名::,所以,直接父类类名即可

echo Human::$aaa;

--其他

在静态方法中,是无法访问其他变量的,也就是说,不能用$this->

--小结

/** * 静态成员 * 1. 静态属性用于保存类的公有数据 * 2. 静态方法里面只能访问静态属性 * 3. 静态成员不需要实例化对象就可以访问 * 4. 类内部,可以通过self或者static关键字访问自身的静态成员 * 5. 可以通过parent关键字访问父类的静态成员 * 6. 可以通过类名称在外部访问类的静态成员 */

4.4 Final成员

--问题

不希望某个类拥有子类;

不希望子类修改父类中的某个变量(避免重写?)

--final

》=php5版本

举个例子

子类中编写跟父类中完全一致的方法名(内容可以不同),会完成对父类方法的重写!

所以,不希望被重写的父类中的方法,写上final

依此类推,对于不想有子类的父类,在类名那里写上final

--小结

PHP面向对象详解(三)(php面向对象实例)

/** * 重写和Final * 1. 子类中编写跟父类完全一致的方法可以完成对父类方法的重写 * 2. 对于不想被任何类继承的类可以在class之前添加final关键字 * 3. 对于不想被子类重写(overwrite, 修改)的方法,可以在方法定义前面添加final关键字 */

4.5 数据访问

先把final都去掉

--parent

然后再子类中的方法中写

parent::test();

运行后会发现,依然可以通过parent的关键字调用父类中,即使是被重写的数据

--self

然后在父类中的方法test中写

self::test1();

运行后,发现self可以调用同一个类中的数据(其他方法/静态变量/常量const)

--小结

/** * 数据访问补充 * 1. parent关键字可以用于调用父类被重写的类成员 * 2. self关键字可以用于访问类自身的成员方法,也可以用于访问自身的静态成员和类常量;不能用于访问类自身的属性;访问类常量时不用在常量名称前面加$符号 * 3. static关键字用于访问类自身定义的静态成员,访问静态属性时需要在属性名前面添加$符号 */

4.6 对象接口

非常重要!!!

--问题

不同的类,有着相同的行为,但相同的行为又有着不同的实现方法。

比如人和动物都会吃东西,但吃的方式方法又不太一样。

--定义

接口就是把不同类的共同行为进行了定义,然后在不同的类里面实现不同的功能。

--栗子

可以看到,接口中并没有方法的具体实现,但必须有方法!

那么,下面是,“人类会吃”

请忽略我给出的“食物”。

注意,不再用extends,而是implements。然后,同样是方法名的完全相同。然后,对象必须/最好实现方法。

继续

让动物也吃起来!

--逆向操作

判断某个对象是否连接了某个接口。

会返回boolean值。

--更多的栗子

接口本质上也是类,可以被继承/继承,但是使用继承接口的接口,所有父类、“爷类”的方法都要有具体实现。

--小结

/** * 接口 * 1. 接口的基本概念和基本使用方法 * 2. 接口里面的方法没有具体的实现 * 3. 实现了某个接口的类必须提供接口中定义的方法 * 4. 不能用接口创建对象,但是能够判断某个对象是否实现了某个接口 * 5. 接口可以继承接口(interface extends interface) * 6. 接口中定义的所有方法都必须是公有,这是接口的特性。 */

aaaaaaaaaaaaaa

bu xiang xie le....................

ming tian yao ge ..............

以上内容是小编给大家介绍的PHP面向对象详解(三),希望大家喜欢。

php实现smarty模板无限极分类的方法 本文实例讲述了php实现smarty模板无限极分类的方法。分享给大家供大家参考,具体如下:php$conn=mysql_connect("localhost","admin","admin");mysql_select_db("people_shop",$

分享五个PHP7性能优化提升技巧 PHP7已经发布了,作为PHP年来最大的版本升级,最大的性能升级,PHP7在多放的测试中都表现出很明显的性能提升,然而,为了让它能发挥出最大的性能,我还是

PHP使用MPDF类生成PDF的方法 由于公司业务的需要,最近需要把html静态文件生成pdf,在网上找了很多类文件来实现,效果都不是很好.最先用的是tcpdf这个类特别的慢,而且当前版本有一个

标签: php面向对象实例

本文链接地址:https://www.jiuchutong.com/biancheng/276179.html 转载请保留说明!

上一篇:PHP常用工具类大全附全部代码下载(php常用的开发工具)

下一篇:php实现smarty模板无限极分类的方法(php smarty)

  • 一般纳税人和小规模纳税人哪个合适
  • 取得交易性金融资产投资收益为什么在借方
  • 计税依据的定义
  • 进项抵扣税率是多少
  • 电子承兑汇票怎么做账
  • 房地产公司环境
  • 增值税发票污染了能补开吗
  • 个人独资企业的债务由谁承担
  • 建筑业企业分包出克的是否能上报
  • 冲销估价入账
  • 收到保险赔款是什么意思
  • 预存送返利的帐户怎么查
  • 微信提现手续费最新规定
  • 企业拆迁补偿款要交税吗
  • 工会经费按上年工资总额还是本年
  • 建筑公司工地买空调
  • 企业所得税季报怎么申报
  • 无形资产和固定资产计提折旧的时间
  • 滞纳金账务处理
  • 期末未缴税额为正是什么意思
  • 公司购买投影仪的必要性?
  • 建筑服务安装费会计分录
  • 核销单取消后出口收汇流程
  • 小规模企业国税怎么报税
  • linux系统怎么关闭端口
  • 股东分红个税怎么做账
  • linux怎么用微信
  • 公司买了一辆二手汽车,怎么入账
  • php中

  • 员工离职当月社保怎么扣除
  • CVE-2016-1000027分析
  • 企业收到赠送商品怎么办
  • 侧边导航栏点击后再展开
  • open是什么含义
  • zip命令详解
  • 合同发票收款付款管理系统源码
  • 工会经费是公司交还是个人交
  • 先收到保险公司赔付然后赔给顾客医药费怎么做帐
  • 如何关闭mysqld
  • 销售自己使用过的物品
  • 商业承兑贴现几个点
  • 事业单位长期应付款呆账怎样处理好
  • 未分配利润转增股本 企业所得税
  • 工程结算属于哪类账户
  • 公司购入的财务会计分录
  • 预缴土地增值税税率表2023年最新
  • 哪些进项发票不能认证
  • 海关完税凭证如何取得
  • 销项税多做了怎么冲
  • 银行支付结算管理办法
  • 房地产公司预收房款什么时候确认收入
  • 印花税怎么申报缴纳
  • 房地产销售折让怎么开票
  • 企业研发支出的核算内容
  • 酒店营业成本率怎么算
  • 上年度多计提的附加税怎么办
  • 印花税征税范围2021
  • sysbench内存性能测试
  • mysql null+1
  • mysql5.7.22安装配置教程
  • linux常用小技巧
  • 把winpe安装至系统盘
  • 映泰重装系统按什么
  • win10系统怎么设置开机密码
  • ubuntu做lvm
  • explorer.exe进程文件
  • windowxp背景图
  • win7更改文件名的方法
  • win8中文版怎么升级到win10
  • window10的ie
  • win8无法安装inter显卡驱动
  • unity自动攻击
  • 所见即所得出自哪里
  • Unity3D游戏开发标准教程
  • 基于jquery实现小说
  • crontab每秒执行一次命令
  • JavaScript toFixed() 方法
  • javascript基础入门视频教程
  • javascript创建对象的三种方法
  • jquerycuishifeng
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设