PHP高级程序设计 学习笔记 2014.06.12 异常经常被用来处理一些在程序正常执行中遇到的各种类型的错误.比如做数据库链接时,你就要处理数据库连接失败的情况.使用异常可以提高我们程序的容错特性,从而使我们的应用程序更加的稳定和健壮. 使用异常 PHP5 增加了类似其他语言的异常处理模块.在PHP代码中所产生的异常可被 throw 语句抛出并被 catch 语句捕获.需要进行异常处理的代码都必须放入到 try 代码块内,以便捕获可能存在的异常.每个try至少对应一个 catch 块.使用多个…
PHP高级程序设计 学习笔记 2014.06.09 什么是面向对象编程 面向对象编程(Object Oriented Programming,OOP)是一种计算机编程架构.OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成.OOP 达到了软件工程的三个主要目标:重用性.灵活性和扩展性.为了实现整体运算,每个对象都能够接收信息.处理数据和向其它对象发送信息. 1.PHP中的抽象类 PHP 5 支持抽象类和抽象方法.定义为抽象的类不能被实例化.任何一个类,如果它里面至少…
PHP高级程序设计 学习笔记 2014.06.11 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的:设计模式使代码编制真正工程化:设计模式是软件工程的基石脉络,如同大厦的结构一样. 单例模式 当需要保证某个对象只能有一个实例的时候,单例模式非常有用.它把创建对象的控制权委托到一个单一的点上,任何时候应用程序都只会仅有一个…
PHP高级程序设计 学习笔记 2014.06.12 命名空间概述 PHP 在 5.3.0 以后的版本开始支持命名空间.什么是命名空间?从广义上来说,命名空间是一种封装事物的方法.在很多地方都可以见到这种抽象概念.在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题: 用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突. 为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性. PH…
PHP高级程序设计 学习笔记 2014.06.10 Static(静态)关键字用来定义静态方法和属性,static 也可用于定义静态变量以及后期静态绑定. 1.静态变量 static variable 静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失.也就是说,在下一次执行这个函数时,变量仍然会记得原来的值.要将某个变量定义为静态的,只需要在变量前加上static关键字即可. function testing() { static $a = 1; $a *= 2; echo…
在学习JavaScript面向对象的编程之前,需要知道,并了解面向对象的一些基本的常识.初学者中大多数都以为面向对象中,面向对象的编程是很重要和占据很大一部分精力.笔者在之前也是认为OOP是面向对象的主要部分,那么和我持有一样想法的,下面先要纠正这一想法,真正了解面向对象. 一.初识面向对象 面向对象分为三部分,包括面向对象分析(OOA).面向对象设计(OOD).面向对象的程序设计(OOP). 1.1 OO编程(Object Oriented Analysis) 典型的OO编程过程,应先整理需求…
在写面向对象编程思想-设计模式中的js部分的时候发现很多基础知识不了解的话,是很难真正理解和读懂js面向对象的代码.为此,在这里先快速补上.然后继续我们的面向对象编程思想-设计模式. 什么是鸭子类型 javascript是一门典型的动态类型语言,也就弱类型语言. 那什么是鸭子类型:[如果它走起路来像鸭子,叫起来也是鸭子,那么它就是鸭子] var 鸭子 = { 走路: function () { }, 咕咕咕: function () { } } var 鹦鹉 = { 走路: function (…
原文地址:http://www.cnblogs.com/zhaopei/p/6623460.html阅读目录   什么是鸭子类型 javascript的面向对象 封装 继承 多态 原型 this指向 call apply band js中的闭包 什么是高阶函数 在写面向对象编程思想-设计模式中的js部分的时候发现很多基础知识不了解的话,是很难真正理解和读懂js面向对象的代码.为此,在这里先快速补上.然后继续我们的面向对象编程思想-设计模式. 什么是鸭子类型 javascript是一门典型的动态类…
一.js对象 1.js对象 js对象是一种复合数据类型,它可以把多个(不同类型的)数据集中在一个变量中,并且给每个数据起名字. 2.对象与数组 对象的每个数据有对应的名字(属性名),我们通过叫名字访问具体哪个数据: 数组的每个数据没有名字,我们只能通过编号来访问具体哪个数据. 从本质讲,数组就是对象的特殊形式,数组的每个索引实质就是特殊化的 对象属性名.举个例子: var a = [0,1,2,3]; a['me'] = 1; a[-1] = '负数'; //负数 转换为 字符串 a[1.23]…
接上一篇 面向对象编程的理解? 答:面向对象编程,就是将你的需求抽象成一个对象,然后针对这个对象分析其特征(属性)与动作(方法).这个对象我们称之为类.面向对象编程思想其中一个特点就是封装,就是把你需要的功能放在一个对象里. 一.封装 1.1创建一个类 在javascript中创建一个类,很容易, 方法一:首先,声明一个函数保存在变量里,然后,在这个函数内部通过this(函数内部自带的一个变量,用于指向当前这个对象)变量添加属性或者方法,来实现对类的添加属性或方法. 举个例子: var Book…