Objective-C精华
文章平均质量分 58
忘不了的石楠花
我选择不恨,平静走远。
展开
-
1 | Objective-C入门
Objective-C是苹果公司的OS X和iOS(iPad、iPhone和iPod)平台上的主要编程语言。原创 2016-04-06 19:55:44 · 401 阅读 · 0 评论 -
0 | C堆&栈
以下是对堆栈的简单分析:一般情况下程序存放在Rom(只读内存,比如硬盘)或Flash中,运行时需要拷到RAM(随机存储器RAM)中执行,RAM会分别存储不同的信息,如下图所示: 内存中的栈区处于相对较高的地址以地址的增长方向为上的话,栈地址是向下增长的。栈中分配局部变量空间,堆区是向上增长的用于分配程序员申请的内存空间。另外还有静态区是分配静态变量,全局变量空间的;转载 2016-04-07 14:18:04 · 348 阅读 · 0 评论 -
3 | 对象和消息传递
使用NSObject类的alloc方法可以为对象分配内存,将对象的实例变量初始化为0。但是alloc方法既没有将该对象的实例变量初始化为合适的值,也没有为这个对象准备其他必须的对象和资源。NSObject提供了init方法可以完成对象初始化的基础任务。通常使用一行代码就可以分配和初始化实例:[[ClassName alloc]init];重构真特么的高大上的名字。官方解释:原创 2016-04-11 16:00:04 · 757 阅读 · 0 评论 -
7 | Objective-C动态特性
Objective-C的动态特性:动态类型(dynamic typing)、动态绑定(dynamic binding)、动态方法决议、动态加载(dynamic loading)、自省(introspection)动态类型即运行时再决定对象的类型。简单说就是id类型,id类型即通用的对象类,任何对象都可以被id指针所指,而在实际应用中,往往使用introspection(自省)来确定原创 2016-04-12 09:05:05 · 810 阅读 · 0 评论 -
2 | 使用类
实例变量设置访问实例变量的方式:@private:只能在声明它的类以及与该类型相同的其它实例中访问@protected:相比于private,它可以在该类的子类的实例中访问,一般我们声明的实例变量没有做访问限制的,默认都是protected@public:可以被任何代码访问@package:主要用于库和框架类。可以被其它类实例和函数访问,但是在其所属程序包的外部,会被视为私有变原创 2016-04-11 14:32:46 · 301 阅读 · 0 评论 -
CoreData笔记
1.CoreData的基础结构:如图所示,除去iPhone Application和Data File剩下的就是Core Data的结构(Core Data Stack)。在将用户数据存储到外部文件之前,我们需要考虑以什么样的格式进行存储,所以需要先进行数据表的设计--设计好的数据模型会以Managed Object Model的形式存在于内存中。采用面向对象的思想进行表的设计时,每一原创 2016-04-19 10:03:08 · 411 阅读 · 0 评论 -
objc_setAssociatedObject关联
关联 关联是指把两个对象相互关联起来,使得其中的一个对象作为另外一个对象的一部分。 关联特性只有在Mac OS X V10.6以及以后的版本上才是可用的。在类的定义之外为类增加额外的存储空间 使用关联,我们可以不用修改类的定义而为其对象增加存储空间。这在我们无法访问到类的源码的时候或者是考虑到二进制兼容性的时候是非常有用。 关联是基于关键字的,因此,我们转载 2016-04-20 19:17:47 · 357 阅读 · 0 评论