ios
文章平均质量分 70
胖子跑快点
这个作者很懒,什么都没留下…
展开
-
OC-语法
为了避免跟C、C++的关键字冲突,所有的OC关键字都以@开始,比如@interface,@implementation,@end@public、@protected、@private,@selector@try、@catch、@throw、@finally @protocol,@classOC 2.0中引入的新关键字有@property,@synthesize@原创 2014-05-27 13:52:11 · 572 阅读 · 0 评论 -
IOS-getter和setter方法
--点语法可以不使用[student age],用student.age来访问变量虽然看起来student.age是直接访问变量,但本质还是调用了方法来访问变量为什么要设计点语法?方便程序员快速入手OC简化程序设计隐藏了内存管理细节隐藏了多线程、同步、加锁细节方法调用Student *stu = [[Student alloc] init];[原创 2014-05-27 14:02:02 · 940 阅读 · 0 评论 -
IOS 内存管理
范围:任何继承了NSObject的对象,对基本数据类型无效原理:每个对象内部都保存了一个与之相关联的整数,称为引用计数器当使用alloc、new或者copy创建一个对象时,对象的引用计数器被设置为1给对象发送一条retain消息,可以使引用计数器值+1给对象发送一条release消息,可以使引用计数器值-1当一个对象的引用计数器值为0时,那么它将被销毁,其占用的内存被系原创 2014-05-27 14:19:10 · 384 阅读 · 0 评论 -
IOS-Category
OC提供了一种与众不同的方式--Catagory,可以动态的为已经存在的类添加新的行为(方法)这样可以保证类的原始设计规模较小,功能增加时再逐步扩展使用Category对类进行扩展时,不需要创建子类Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件中@interface Student: NSObject-(void) print;原创 2014-05-27 14:31:01 · 498 阅读 · 0 评论 -
IOS-常用数据类型(1)
--BlockBlock封装了一段代码,可以在任何时候执行Block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:block是inline(内联函数)的,并且默认情况下它对局部变量是只读的苹果官方建议尽量多用block。在多线程、异步任务、集合遍历、集合排序、动画转场用的很多Blocks的定义:int (^MySum)原创 2014-05-27 15:03:43 · 723 阅读 · 0 评论 -
IOS-常用数据类型(2)
-NSRange在Foundation/NSRange.h中对NSRange的定义typedef struct _NSRange { NSUInteger location; NSUInteger length;} NSRange; // typedef unsigned long NSUInteger;这个结构体用来表示事物的一个范围,通常是字符串里的字符原创 2014-05-27 15:06:50 · 866 阅读 · 0 评论 -
IOS-Protocol
简单来说就是一系列方法的列表,其中声明的方法可以被任何类实现。这种模式一般称为代理(delegation)模式在iOS和OS X开发中,Apple采用了大量的代理模式来实现MVC中View(UI控件)和Controller(控制器)的解耦在声明文件(MyBtnDelegate.h文件)中定义#import @class MyBtn;@protocol MyBtnDelegate原创 2014-05-27 14:33:14 · 587 阅读 · 0 评论 -
__block与__weak的区别理解
NSMutableArray *mArray = [NSMutableArray arrayWithObjects:@"a",@"b",@"abc",nil]; NSMutableArray *mArrayCount = [NSMutableArray arrayWithCapacity:1]; [mArray enumerateObjectsWithOptions:NSEnume原创 2015-08-13 15:07:35 · 444 阅读 · 0 评论