PHP核心技术与最佳实践学习(一)面向对象

原创 2015年11月17日 20:47:44

类和对象

类是定义一系列属性和操作的模版
对象把属性具体化
对象就是数据,对象本身不包含方法,但是对象有一个指针指向一个类
类和对象不可分割,有对象就必然有一个类与其对应
特殊情况:由标量进行强制类型转换的object,没有一个类和它对应,这时PHP中有一个类叫stdClass就会收留这个对象

魔术方法

魔术方法用'__'开头
__construct 构造函数 __destruct 析构函数
__set 和 __get 对对象属性赋值或者取值
__call 和 __callStatic 调用不存在的方法或静态方法时调用
    __call($name , $arguments)要调用的方法名称和参数数组
__toString() 如果类定义了该方法,那么在echo 对象是会调用该方法

继承

继承与多态都是对类进行复用,一个是类级别的复用,一个是方法级别的复用
继承 class person{} class family extends person{}
    调用父类参数、方法 parent::$a parent::fun()
    调用自身参数、方法 self::$a self::fun()
如果声明类成员或方法为static 就可以不实例化类而直接访问
对于不是专门用于被继承的类,禁止其被继承,使用final修饰符
优秀考虑用组合关系提高代码的可重用性
底层代码多用组合,顶层/业务层代码多用继承
Traits既可以使单继承模式的语言获得多继承的灵活,又可以避免多继承带来的种种问题

多态

含义:同一类的对象收到相同消息时,会得到不同的结果。
真正意义:多态性是一种通过多种状态或阶段描述相同对象的编程方式,实际开发中,只要关心一个接口或基类的编程,而不是关心一个对象所属于的具体类。
多态的本质就是if else
通过接口可以实现PHP多态

接口

接口这样描述自己:对于实现我的所有类,看起来都应该像我现在这个样子
interface xxx {方法定义}  class yyy implements xxx{具体实现} yyy去具体实现xxx中的定义的方法
接口为抽象而生

反射

反射指在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等详细信息,包括注释。

异常和错误处理

异常和错误是两个概念
PHP通常是无法自动捕获有意义的异常,它把所有不正常的情况都视为错误,只有你主动throw后,才能捕获异常。
PHP中通过重写异常类、手动抛出错误的方式进行异常处理
PHP错误就是会使脚本运行不正常的情况

做后台开发用到的技能都在这儿——《后台开发:核心技术与应用实践》

这本书囊括了做后台开发用到的全部技能,但并非空洞乏味的说教,而是在传授理论的同时有优雅的代码以参考、有丰富的图表以直观、有多样的工具以高效,适合各个阶段的Linux C++后台开发者阅读。...
  • dongfeng9ge
  • dongfeng9ge
  • 2016年09月20日 13:22
  • 3967

30 个java编程技巧(最佳实践的初学者)

1.return 一个空的集合,而不是 null 如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素。这样你就不用去写一大堆 ”if else” 判断null元素。 ...
  • zyf__java
  • zyf__java
  • 2016年09月05日 08:23
  • 6160

面向对象开发中的几个核心的思想和概念

这里有面向对象开发的几个核心的思想和概念 1、问题领域、对象、属性、状态、行为、方法、实现 问题领域: 指软件系统所模拟的真实世界中的系统,在现实生活中,比较常见的比如,税收、社...
  • ziwen00
  • ziwen00
  • 2013年04月15日 18:45
  • 5479

读书随码《php核心技术与最佳实践》面向对象的形与本

  • world_er
  • world_er
  • 2015年11月12日 13:13
  • 342

《PHP核心技术与最佳实践》读书笔记(面向对象篇)

对象 php的对象是用数组模拟的,可以强制类型转换之后打印出来。print_r((array)$student); 由此可见对象是一堆数据。所以可以把一个对象存储起来,以便需要时用,也就是对象的序列化...
  • Return_True_hang
  • Return_True_hang
  • 2016年04月03日 09:47
  • 360

深入理解PHP 高级技巧、面向对象与核心技术(原书第3版)源码

  • 2016年08月07日 13:12
  • 327KB
  • 下载

深入理解php:高级技巧、面向对象与核心技术(原书第3版)

  • 2015年09月07日 15:53
  • 8.32MB
  • 下载

深入理解PHP高级技巧、面向对象与核心技术之调整浏览器缓存

缓存页面是保存页面的内容的一种方式,然后在产生请求时提供这个保存的页面版本,而不是服务器上的版本。 对于动态的、PHP驱动的站点,有时我们需要确保终端用户获得的是最新的版本。 利用PHP的header...
  • u012675743
  • u012675743
  • 2015年03月27日 19:15
  • 659

《php核心技术与最佳实践》笔记7

面向对象的设计原则 五大原则包括:单一职责原则,接口隔离原则,开放-封闭原则,替换原则,依赖倒置原则。 单一职责原则(SRP)的含义是:1.避免相同的原则分散到不同的类中;2.避免一个类承担太多的职责...
  • u011092567
  • u011092567
  • 2015年05月02日 15:30
  • 307

《php核心技术与最佳实践》笔记6

关于PHP中的异常及错误处理 如果没有异常及错误处理机制,我们处理这些问题的时候,需要采用if...else的机制,这会使我们的代码变得冗长且不利于阅读,这时候,我们需要一些异常或者错误让我们必须去...
  • u011092567
  • u011092567
  • 2015年05月01日 16:31
  • 383
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP核心技术与最佳实践学习(一)面向对象
举报原因:
原因补充:

(最多只允许输入30个字)