
OC
zhanghow
人生是一个长跑,不要在意短期的得失,更重要的是自己是否在正确的方向上。
展开
-
OC内存管理 assign retain copy 原型函数
OC内存管理 property中各属性函数原型: 1️⃣assign: -(void)setP:(point*)_p{ p=_p ; } 2️⃣retain: -(void)setP:(point*)_p{ if(p!=_p){ [p release]; p=[_p retain]; } } 3️⃣copy: -(void)setP:(poi原创 2016-09-22 21:18:36 · 357 阅读 · 0 评论 -
OC 文件操作 持久化
2016.9.6 OC 第八天 文件操作 相对路径、绝对路径两种 相对路径:相对于某个参照物的位置 绝对位置:固定位置 ~用户根目录 . 当前目录 .. 当前目录的上一级目录 NSCoding协议:数据持久化 N框架提供对文件、路径操作的类创建文件、判断文件是否存在、拷贝、删除 写入文件必须保证文件存在(不会自动创建文件) 文原创 2016-10-22 15:15:07 · 334 阅读 · 0 评论 -
OC 内存分配
内存分配与初始化: 内存分配与初始化是分开的 Foo * foo=[[foo alloc]init]; // 内存开辟 初始化(构造函数): 1️⃣名字以init开头 2️⃣返回一个对象 (函数链) 3️⃣先执行父类的初始化方法(先初始化继承自父类的成员) 4️⃣需要检查父类初始化的返回值 5️⃣正确处理初始化中的错误(参数的判断) id // 任意类型的对象 -(in原创 2016-10-22 15:16:05 · 653 阅读 · 0 评论 -
OC内存管理
OC内存管理 property中各属性函数原型: 1️⃣assign: -(void)setP:(point*)_p{ p=_p ; } 2️⃣retain: -(void)setP:(point*)_p{ if(p!=_p){ [p release]; p=[_p retain]; } } 3️⃣copy: -(void)setP:(poi原创 2016-10-22 15:17:27 · 280 阅读 · 0 评论 -
OC 继承(2)
对象的实例变量默认的访问权限是protected,所以主函数终不能直接访问到实例变量 实例方法默认访问权限是:public — (void) setX: (int)_x —(int)x; 对象.实例变量 => 并没有直接访问protected成员,而是通过get set 函数来访问protected成员 对实例变量a,b自动生成set、get方法的定义 @property原创 2016-10-22 15:20:27 · 272 阅读 · 0 评论 -
OC 内存引用计数 内存管理机制
内存引用计数:用于管理对象内存的‘使用次数’ (注意:是对内存的引用计数) 注意: 否指向同一块地址空间 只有当内存的引用计数为0时,内存自动释放 release:仅仅让通过指针让内存的引用计数-1 assign: 基本数据类型 retain:浅拷贝,但是引用计数会+1 @property(retain) -(void)setP:(point*)_p{ p=[_p retai原创 2016-10-22 15:19:23 · 493 阅读 · 0 评论 -
OC 变量类型 数组 字典 等容器
// NSNumber 对象 由于数组不能存储基本数据类型,所以就用到NSNumber对象 void NSnumberTest(){ //1.NSNumber初始化 //类方法:自动放入autoreleasepool中 NSNumber * num1=[NSNumber numberWithInt:100]; NSLog(@"num1=%@",num1原创 2016-10-22 15:18:41 · 456 阅读 · 0 评论 -
OC 继承
1️⃣OC中一个类只有一个父类 2️⃣根类NSobject 3️⃣所有继承为虚继承 4️⃣实例变量访问权限:protect 5️⃣ 实例方法访问权限:public 6️⃣方法均为虚方法 执行正确的方法:在当前类中查找此方法,找到执行,找不到去父类中继续查找,直到根类,根类也没有,程序报错 给子类中添加新的方法:与C++中完全一样 覆盖(重写):和C++完全一样 给原创 2016-10-22 15:16:54 · 265 阅读 · 0 评论 -
UIWindow :窗口 (UIView) UIView: 视图
[[UIScreen mainScreen] bounds]// 获取当前设备的屏幕大小 如果类关联xib;需要使用initwithNibName:方法来初始化对象 如果类不关联xib;需要使用init:方法来初始化对象 UIWindow :窗口 用来展示视图(UIView) UIView: 视图 用来提供可视化,存放可见控件,提供用户交互的响应 因为直接给窗口原创 2016-10-22 15:12:28 · 377 阅读 · 0 评论 -
OC 协议&&分类
2016.9.5 OC 第七天 协议&&分类 OC没有多继承,为了完成多继承的效果,使用分类和协议 协议并不是一个真正的类,协议中只有方法,不能有实例变量 方法只有定义,没有实现。 协议: 正式协议:自定义,通过关键字@protocol创建的协议 两个关键字修饰方法: @optional:其修饰的方法可实现,也可不实现 @required:必须要实现其修饰的方法 (如果没有原创 2016-10-22 15:14:11 · 948 阅读 · 0 评论