今天,在坊间听到有人在争论OC中关于NSString的深浅复制,听了下,感觉很有必要来一个分析总结,让我们从底层去了解OC中深浅复制的运作机制.
所谓copy就是在原有对象的基础上产生一个副本对象,遵循最关键的两点原则: 1. 改变原对象的属性和行为不会对副本对象产生任何影响 2. 改变副...
分类:
其他好文 时间:
2014-05-26 20:11:38
阅读次数:
232
1.
IBAction的参数========================================- (IBAction)left:(UIButton
*)button1> 在OC中,绝大多数的控件监听方法的第一个参数就是控件本身2> 默认连线时的参数类型是id3>
如果要在监听方法中,方...
分类:
移动开发 时间:
2014-05-26 20:08:54
阅读次数:
323
学习要点:1.OOP 的封装2.OOP 的继承3.OOP
的多态面向对象的三个主要特性是封装、继承和多态。一.OOP的封装隐藏对象的字段和实现细节,仅对外公开接口,控制在程序中字段的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机...
分类:
其他好文 时间:
2014-05-26 19:19:44
阅读次数:
228
我们需要封装时,不可避免的必须封装。此乃一句废话,也是真理。那么何时需要封装、多态或者任何其它方式方法?最后重复一遍:当需求或者限制明确的指出这一点、而不是我们自身的心智包袱暗示我们这么做的时候。作为从面向对象走过的人,我深刻的知道这种暗示有时会多么强烈,我们真正要做的就是暂时拒绝诱惑、缓一缓、再缓...
分类:
其他好文 时间:
2014-05-26 18:49:29
阅读次数:
327
php面向对象开发的学习(一)自己的事情自己做面向对象的3大特点:(封装,继承,多态)缺一不可封装:把相似内容的东西封装为一个类继承:父母的习性或财产,由我继承或遗传多态:运行时加载类不能直接使用__constructc()
初始化对象封装关键字:public(外部可以访问),protected,p...
分类:
Web程序 时间:
2014-05-25 22:55:49
阅读次数:
301
阐述了Java面向对象程序设计中的多态并实现了一个工资结算系统。简单介绍了UML并给出了工资结算系统的类图。...
分类:
编程语言 时间:
2014-05-25 22:31:13
阅读次数:
347
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
黑马程序员学习笔记_OC之给NSString增加分类
1、
目的:给某个类扩充一些方法,但不修改原来类的代码,不使用继承。
2、
分为三个步骤:1>新建一个方法类
2>声明 @interface
类名(分类名称)...
分类:
其他好文 时间:
2014-05-25 21:57:28
阅读次数:
263
#import int main(int argc, const char *
argv[]){ @autoreleasepool { //block的规则 //返回值类型(^block名称)(形参参数列表)一般形参变量名不用写=
^返回值类型(实参数列表){block体}...
分类:
其他好文 时间:
2014-05-25 20:37:16
阅读次数:
193
这三个概念都是与OO中的多态有关系的。如果单是区别重载与覆盖这两个概念是比较容易的,但是隐藏这一概念却使问题变得有点复杂了,下面说说它们的区别吧。
重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。 覆盖(也叫重写)是指在派生类中重新对基类中...
分类:
其他好文 时间:
2014-05-25 15:20:56
阅读次数:
285
作用:使设计的容器有能力包含类型不同而彼此相关的对象。
容器通常只能包含一种类型的对象,所以很难再容器中存储对象本身。存储指向对象的指针,虽然允许通过继承来处理类型不同的问题(多态性),但是也增加了内存分配的额外负担。所以我们通过定义名为代理的对象来解决该问题。代理运行起来和它所代表的对象基本相同,但是允许将整个派生层次压缩在一个对象类型中。
假设有一个表示不同种类的交通工具的类派生层次:...
分类:
编程语言 时间:
2014-05-25 10:06:40
阅读次数:
249