码迷,mamicode.com
首页 > 其他好文 > 详细

Foundation框架

时间:2015-08-06 01:59:09      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:

Foundation框架
一、Foundation课程安排
1.NSObject、NSString、NSMutableString
2.NSNumber、NSValue、NSDate、NSArray NSMutableArray
3.NSArray的遍历、NSArray的新语法(IOS6)、NSArray Copy、NSArray排序
4.NSSet、NSMutableSet、NSDictionary、NSMutableDictionary、Block代码段(函数指针)
二、Api应用程序接口 文档(说明书)
Application Program Interface
三、Foundation简介
Foundation Framework OSX IOS 基本框架
类库(Class Library)
*基础类:
NSObject、NSString、NSMutableString
NSNumber、NSValue、NSDate…
*集合类:
NSArray、NSSet、NSMutableSet、 NSDictionary、NSMutableDictionary
网络类:…
文件类:...
四、NSObject
1.概述:所有类的父类,提供了系统运行时的一些基本功能。
2.类的初始化
a.类加载的时候,自动调用+load方法
b.当第一次使用类时,自动调用+initialize方法
c.类在使用之前会执行此方法,且只会执行一次
3.对象的创建和释放
alloc init dealloc new([[xxx alloc]init])
4.-copy
a.并不是所有对象都有copy方法,如果一个对象支持copy功能,首先要遵守协议NSCopying协议,必须实现copyWithZone方法。
b.如果不但想复制对象,而且还要复制对象的值,一般还要重写有参的初始化方法。
5.类对象
a.类实例化变成对象,类的对象。(堆)
b.类加载到内存中并创建类在内存中的对象(代码区),类对象。
c.普通的类不占堆内存空间,类对象是占代码区空间的。
d.向类发送class消息,可以创建类对象。
Class class = [TRStudent class];
e.比较“类”信息的时候,需要使用类对象,判断一个类是否是另一个类的子类。
[TRPerson isSubclassOfClass:[TRStudent class]]
f.避免多态使用时的不安全性问题
6.方法选择器 @selector
a.和C语言中的函数指针相类似
b.SEL就是方法的类型 sel方法变量
SEL sel = @selector(study);
c.某个类是否存在某个方法(消息)
BOOL b = [TRStudent instancesRespondToSelector:@selector(study)]
d.可以向对象发送任何消息,而不需要在编译的时候声明这些消息
[stu2 performSelector:sel2];
与普通向对象发送消息区别:编译器不会验证是否声明该方法,直接向对象发送消息,最好验证一下对像是否存在该消息,以保证代码的安全性。
7.协议选择器
a.协议的引用指向一个协议
Protocol* p = @protocol(NSCopying);
b.可以判断一个类是否遵守了某个协议
BOOL b = [TRStudent conformsToProtocol:p];
8.其它方法
a.判断一个引用指向的对象是否是某种类型或子类型
-(BOOL)isKindOfClass:(Class)c;
b.判断一个引用(实例)指向的对象是否是某种类型
-(BOOL)isMemberOfClass:(Class)c;
c.比较类信息的时候,需要使用类对象,判断一个类是否是另一个类的子类
+(BOOL)isSubclassOfClass:(Class)c;

 

Foundation框架

标签:

原文地址:http://www.cnblogs.com/kentR/p/4706220.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!