OC—基础
三叶草001
SDFSDFSDFAFASDFS
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
最常用的版本控制
Object—C 基础翻译 2017-05-23 15:24:47 · 421 阅读 · 0 评论 -
面向对象
面向对象产生的原因有下面两点: 1、 计算机是帮助人们解决问题的,然而计算机终究是个机器,他只会按照人所写的代码,一步一步的执行下去,最终得到了结果,因此无论程序多么的复杂,计算机总是能轻松应付,结构化编程,就是按照计算机的思维写出的代码,但是人看到这么复杂的逻辑,就无法维护和扩展了。 2、 结构化设计是以功能为目标来设计构造应用系统,这种做法导致我们设计程序时,不得不将客体所构成的转载 2017-05-23 19:28:21 · 266 阅读 · 0 评论 -
内存管理
1 引用计数 在ObjC中,对象什么时候会被释放(或者对象占用的内存什么时候会被回收利用)? 答案是:当对象没有被任何变量引用(也可以说是没有指针指向该对象)的时候,就会被释放。 那怎么知道对象已经没有被引用了呢? ObjC采用引用计数(reference counting)的技术来进行管理: 1)每个对象都有一个关联的整数,称为引用计数器转载 2017-05-23 20:11:31 · 325 阅读 · 0 评论 -
@property 属性类型归纳和介绍
1.atomic与nonatomic atomic:默认是有该属性的,这个属性是为了保证程序在多线程情况,编译器会自动生成一些互斥加锁代码,避免该变量的读写不同步问题 nonatomic:如果该对象无需考虑多线程的情况,请加入这个属性,这样会让编译器少生成一些互斥加锁代码,可以提高效率。 2.readwrite与readonly(readwrite、readonly这两个属性的真正价转载 2017-05-23 21:07:00 · 1339 阅读 · 0 评论 -
详解KVC
KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iOS的开发中,可以允许开发者通过Key名直接访问对象的属性,或者给对象的属性赋值。而不需要调用明确的存取方法。这样就可以在运行时动态在访问和修改对象的属性。而不是在编译时确定,这也是iOS开发中的黑魔法之一。很多高级的iOS开发技巧都是基于KVC实现的。目前网上关于KVC的文章在非常多,翻译 2017-05-23 22:11:14 · 424 阅读 · 0 评论 -
Block
Block简介 Block是一种比较特殊的数据类型。它可以保存一段代码,在合适的时候取出来调用。 Block的修饰 ARC情况下 1.如果用copy修饰Block,该Block就会存储在堆空间。则会对Block的内部对象进行强引用,导致循环引用。内存无法释放。 解决方法: 新建一个指针(__weak typeof(Target) weakTarget = Target )指转载 2017-05-23 23:12:48 · 327 阅读 · 0 评论
分享