第一、在OC中关于对象模型,有五个基本概念,Object(实例),Class(类),Metaclass(元类),Rootclass(根类),Rootclass‘s metaclass(根元类)
第二、每一个object都有一个隐藏的isa指针,指向class,对象结构如下所示:
typedef struct objc_class *Class;
typedef struct objc_obj...
分类:
其他好文 时间:
2015-01-06 15:34:41
阅读次数:
188
①.OC中常用排序方法:
1).不可变数组
- (NSArray *)sortedArrayUsingSelector:(SEL)comparator;
- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr;
2)可变数组
- (void)sortUsingSelector:(SEL)comparator;
- (voi...
分类:
移动开发 时间:
2015-01-05 23:30:37
阅读次数:
6303
不知不觉作为 iOS 开发也有两年多的时间了,记得当初看到 OC 的语法时,愣是被吓了回去,隔了好久才重新耐下心去啃一啃。啃了一阵,觉得大概有了点概念,看到 Cocoa 那么多的 Class,又懵了,怎么才能调用系统的相机?怎么保存信息?怎么做一个像 Twitter 个人页那样的页面?总之就是不知道...
分类:
移动开发 时间:
2015-01-04 18:43:52
阅读次数:
208
在之前的一片文章中介绍了对象的拷贝相关知识,今天我们来看一下OC中的单例模式,单例模式在设计模式中用的可能是最多的一种了,而且也是最简单的一种实现单例模式有三个条件1、类的构造方法是私有的2、类提供一个类方法用于产生对象3、类中有一个私有的自己对象针对于这三个条件,OC中都是可以做到的1、类的构造方...
分类:
其他好文 时间:
2015-01-03 15:53:09
阅读次数:
139
之前一片文章中我们介绍了OC中的两个关键字@property和@synthesize的使用的使用,今天我们来看一下OC中数组对象在是如何处理对象元素的引用计数问题的,同时介绍一下自动释放池的相关概念一、数组对象是如何处理对象元素的引用计数问题 1 // 2 // main.m 3 // ...
分类:
编程语言 时间:
2015-01-03 15:49:47
阅读次数:
177
在前一篇文章中我们说到了如何解决对象的循环引用问题,这一篇文章我们就来介绍一下OC中的对象拷贝概念,这个对于面向对象语言中都会有这种的问题,只是不同的语言有不同的解决方式:C++中有拷贝构造函数,Java中需要实现Cloneable接口,在clone方法中进行操作。但是不过OC更偏向于Java这种方...
分类:
其他好文 时间:
2015-01-03 15:49:19
阅读次数:
189
在之前的一片文章中,我们介绍了数组操作对象的时候引用问题以及自动释放池的概念,今天我们继续来看一下引用计数中一个痛疼的问题:循环引用关于循环引用的问题,这里就不做太多解释了,就是多个对象之间相互引用,形成环状。来看一个具体的例子:Dog类和Person类之间相互引用Dog.h 1 // 2 //.....
分类:
其他好文 时间:
2015-01-03 15:46:05
阅读次数:
182
在前一篇文章中我们介绍了OC中一个重要技术通知,今天我们在来看一下OC中给我们提供的一个技术:谓词(NSPredicate)OC中的谓词操作是针对于数组类型的,他就好比数据库中的查询操作,数据源就是数组,这样的好处是我们不需要编写很多代码就可以去操作数组,同时也起到过滤的作用,我们可以编写简单的谓词...
分类:
其他好文 时间:
2015-01-03 14:40:40
阅读次数:
195
在之前的一篇文章中介绍了Foundation框架中的NSString类和NSMutableString类,今天我们继续来看一下Foundation框架中的NSArray类和NSMutableArray类,其实NSArray类和Java中的List差不多,算是一种数据结构,当然我们从这两个类可以看到,...
分类:
其他好文 时间:
2015-01-03 14:38:12
阅读次数:
168
前一篇文章我们介绍了OC中最常用的文件操作,那么今天来看一下OC中的一个比较有特色的知识点:KVC和KVO一、KVC操作OC中的KVC操作就和Java中使用反射机制去访问类的private权限的变量,很暴力的,这样做就会破坏类的封装性,本来类中的的private权限就是不希望外界去访问的,但是我们这...
分类:
其他好文 时间:
2015-01-03 14:36:22
阅读次数:
250