今天,在坊间听到有人在争论OC中关于NSString的深浅复制,听了下,感觉很有必要来一个分析总结,让我们从底层去了解OC中深浅复制的运作机制.
所谓copy就是在原有对象的基础上产生一个副本对象,遵循最关键的两点原则: 1. 改变原对象的属性和行为不会对副本对象产生任何影响 2. 改变副...
分类:
其他好文 时间:
2014-05-26 20:11:38
阅读次数:
232
学习要点:1.什么是面向对象2.OOP 的特点3.关键的OOP
概念4.创建OOP许多语言本身就是面向对象(OOP)的,而PHP
用了几年才引入了这类功能。面向对象的诞生是开发范型一次的重大改变,编程的注意力重新从应用程序的逻辑回到其数据上来。换句话说,OOP
将焦点从编程的过程性事件转向最终建模的...
分类:
其他好文 时间:
2014-05-26 16:39:57
阅读次数:
222
《设计模式》对状态模式的定义:允许一个对象在其状态改变时,改变它的行为。看起来对象似乎修改了它的类。别名:状态对象(Objects for State)。
在下面两种情况下均可以使用State模式:
1 一个对象的行为取决于它的状态,并且他必须在运行时刻根据状态改变它的行为。
2 一个操作中含有庞大的多分枝的条件语句,并且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常...
分类:
其他好文 时间:
2014-05-25 22:47:41
阅读次数:
254
Flyweight在拳击比赛中指最轻量级,即“蝇量级”或“雨量级”,这里选择使用“享元模式”的意译,是因为这样更能反映模式的用意。享元模式是对象的结构模式。享元模式以共享的方式高效地支持大量的细粒度对象。
Java中的String类型
在JAVA语言中,String类型就是使用了享元模式。String对象是final类型,对象一旦创建就不可改变。在JAVA中字符串常量都是存在常量池中的...
分类:
其他好文 时间:
2014-05-25 22:27:25
阅读次数:
317
出题:不同大小烙饼的排序问题:对于N块大小不一的烙饼,上下累在一起,由于一只手托着所有的饼,所以仅有一只手可以翻转饼(假设手足够大可以翻转任意块数的
饼),规定所有的大饼都出现在小饼的下面则说明已经排序,则最少需要翻转几次,才能达到大小有序的结果(改变饼的顺序只能整体翻转,不能相邻交换);分析:假设...
分类:
其他好文 时间:
2014-05-25 22:25:24
阅读次数:
324
有时候表单中有多个字段是相互关联的,以下遇到的就是证件类型和证件号码的关联,在下拉框中选择不同的证件类型,证件号码的值的格式都是不同的,这就需要动态的改变校验规则。点击(此处)折叠或打开*证件类型
*证件证号 *QQ
分类:
Web程序 时间:
2014-05-25 22:23:21
阅读次数:
447
一、模式定义:
用一个中介者对象来封装一系列的对象交互。中介者使各对象不需要显式的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。
二、结构图
1) 抽象中介者:定义同事(Colleague)对象到中介者(Mediatior)对象的接口,通常是一个事件方法。
2) 具体中介者:具体中介者实现抽象中介者声明的方法。知晓所有的具体同事...
分类:
其他好文 时间:
2014-05-25 21:51:52
阅读次数:
276
桥接模式,将抽象部分与它的实现部分分离,使他们都可以独立的变化。
抽象部分和实现部分不是指父类和子类,这里的抽象部分和实现部分是一种组合的关系。例如,燕子是抽象部分,燕子的翅膀是实现部分,燕子和燕子的翅膀就是一种组合的关系。桥接模式所应用的设计原则就是优先使用组合/聚合,而不是继承原则。
优先使用组合/聚合而不是继承原则:
因为任何父类的改变都会影响子类的行...
分类:
其他好文 时间:
2014-05-25 21:24:35
阅读次数:
228
State模式中我们将状态逻辑和动作实现进行分离。允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类;在一个状态即将结束的时候启用下一个状态。
1 /////////state.h//////////////////////////////////////////////////...
分类:
其他好文 时间:
2014-05-25 20:34:33
阅读次数:
296
win7
系统下的cmd命令,直接cd命令切换盘符和以往有些不同,现在默认只能在当前盘符中改变目录,如果要改变盘符则需要多加一个/d命令。如下图所示:(对cd命令的帮助
大家可借助help cd命令进行查看) Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009...