- 博客(15)
- 资源 (1)
- 收藏
- 关注
原创 objective-c 内管管理3
#import /*1.set方法内存管理相关的参数retain :release 旧值,retain新值assign :直接赋值(默认,适应于非oc对象类型)copy :release旧值,copy真值2.是否要生成set方法readwrite :同时生成setter和getter的声明,实现readonly:只会生成getter的声明,实现3.nonatomic :性能高
2015-02-26 20:25:25
370
原创 objective-c 内存管理2
#import /*1.你想使用某个对象,就应该让对象的计数器 +1 (让对象做一次retain操作)2.你不想使用某个对象,就应该让对象的计数器 -1 (让对象做一次release)3.谁retain,谁release4.谁alloc,谁release*/@interface Book : NSObject、@property int price;@end@impleme
2015-02-26 19:58:23
322
原创 objective-c 内存管理1
#import /*方法的基本使用1.retain 计数器 +1 ,会返回对象本身2.release 计数器 -1,没有返回值3.retainCount 获取当前的计数器4.dealloc 当一个对象要被回收的时候,就会调用, 一定要调用[super dealloc],这句调用要放在最后面 概念僵尸对象:所占用内存已经被回收的对象,僵尸对象不
2015-02-26 18:52:57
409
原创 objective-c 分类
#import @interface Person : NSObject- (void)test;@end@implementation Person- (void)test{ NSLog(@"Person - test");}/*//Category 分类//分类:可以给某个类扩充一些方法(不能修改原来类的代码)//声明@interface 类名(分类名称)@end
2015-02-26 17:28:54
333
原创 @property 和 @synthesize
#import @interface Person : NSObject{ int _age; int age;}//@property 可以自动生成某个成员变量的setter和getter声明@property int age;//- (void)setAge:(int)age;//- (int)age;//@property int _age;//- (void)
2015-02-26 17:01:23
339
原创 objective-c 类方法
#import /*1.基本概念直接可以用类名来执行的方法(类本身会在内存中占据存储空间,里面有类\对象方法列表)2.类方法和对象方法对比1)对象方法以减号-开头只能让对象调用,没有对象,这个方法根本不可能被执行对象方法能访问实例变量(成员变量)2)类方法以加号+开头只能用类名调用,对象不能调用类方法中不能访问实例变量(成员变量)使用场合:当不需要访问成员
2015-02-25 23:18:27
476
原创 objective-c 方法和函数的区别
方法和函数的区别: 方法: 1.对象方法都是以减号-开头 2.对象方法的声明必须写在@interface和@end之间 对象方法的实现必须写在@implementation和@end之间 3.对象方法只能由对象调用 4.对象方法归类/对象所有 函数: 1.函数能写在文件任意位置(@interface和@end之间),函数归文件所有 2.函数调用不依赖于对象 3.函数内部不能直接通过成员变量名访问某个对象的成员变量
2015-01-13 22:41:31
484
原创 objective-c 封装
面向对象三大特性封装,继承,多态01-封装封装的作用:1)过滤不合理的值2)屏蔽内部的赋值过程3)让外界不必关注内部的细节隐藏我们内部的一些细节,不让外界知道这些细节。把内部的赋值操作封装起来,用set和get给外界设置,赋值变量。02-弱语法oc是在运行过程中才会检测对象有没有实现相应的方法
2015-01-11 15:10:43
400
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人