objective-c学习笔记

Objective-c学习笔记数组

1.使用#import导入头文件,通常osx命令行开发使用<Foundation/Foundation.h>,图形界面开发使用<Cocoa/Cocoa.h>缓存

2.OC中字符串再也不是数组,而是变成了NSString类型的对象,凡是涉及到字符串的都是对象,另外,当静态字符串赋值的时候,应该要使用@作标识,例如@“helloworld”数据结构

3.OC中的真假为BOOL类型,同时真为YES假为NO,占八位,系统依靠最低位来肯定,最低位为0为NO,最低位不为零,为YES,因此,比较BOOL的时候,应该和NO比较app

4./tmp为系统缓存目录,系统重启的时候被清空函数

5.id类型是oc的通用指针,该类型能够指向任何对象,可是最好不要滥用 学习

6.oc的接口定义模式以下spa

@interface命令行

{指针

@属性的访问权限component

属性值

}

-(方法的返回类型)方法名:(参数1的类型)参数名,(参数二的类型)参数名;

@end

7.oc的接口实现以下

@implemention

-(方法的返回类型)方法名:(参数1的类型)参数名,(参数二的类型)参数名

{

函数实现/方法实现

}

@end

8.OC调用方法使用中括号,例如 [实例指针  方法名:参数1,参数2]

9.在类的实现中,能够直接访问类的实例变量,这是由于直接访问的时候OC编译器隐藏传递了一个参数self

10.最简单的生成新实例的方式为[类名 new](后面不推荐使用)

11,OC自己不支持多继承,可是能够用委托机制来实现多继承

12.在子类中想要调用父类的方法可使用super关键字,例如 [super init]

13.定义接口的时候能够指明继承的父类,例子以下

@interface 接口名:父类名

@end

14.使用NSLog能够输出,相似于printf

15.NSLog能够打印对象,适应%@参数便可,这样系统会自动调用该对象的description方法

16.属性的存取方法,存方法使用set+属性名 取方法直接使用属性名,假设属性为xxx,则为

-(void)setxxx:(id)xxx -(id)xxx;

17.oc使用.m格式的源文件和.h格式的头文件,一般申明放在.h文件,实现放在.m文件

18.@class 类名 该关键字通常表示导入类,在.h文件中使用的比较多,不想包含头文件的时   候使用该关键字

19.范围结构体 NSRange ,表示数字的起点和大小,参数均为无符号整形,赋值有函数NSMakeRange()函数

20.坐标结构体CGPoint,参数均为浮点型,表示坐标,CGPointMake快速赋值

     图形结构体CGSize 参数为浮点型,CGSizeMake快速赋值

     矩形结构体CGRect 含有两个结构体类型的参数,快速赋值为CGRectMake

21.字符串类NSString的方法

stringWithFormat 建立新字符串

length 获取字符串个数

isEqualToString 字符串比较

compare 字符串比较

NSCompareResult 比较结构枚举,取值包括NSOrderAscending 等三个

hasPrefix 检测字符串是否以指定字符串开头

hasSuffix 检测字符串是否以指定字符串结尾

rangeOfString 检测字符串中是否还有指定字符串 没有返回的NSRange中location为NSNotFound

 

22.NSString是运行时不可变的,若是须要运行时可变的字符串须要NSMuteableString

stringWithCapacity 指定初始化容量

appendString 附加子串

appendFormat  附加格式化字符串

deleteCharactersInRange 删除字符串中指定位置的字符

由于NSMuteableString是NSString的子类,因此NSString的函数NSMuteableString 都能用

 

22.NSArray

NSArray中能够放入任意类型的对象,可是不能存放原生数据类型

arrayWithObjects 初始化,指定原始数据列表

count 得到元素个数

objectAtIndex 获取特定位置的元素

componentsJoinedByString 使用特定字符串连接全部元素成为一个新的字符串返回

 

22,可变数组NSMutableArray

arrayWithCapacity 指定初始化容量

addObject 在末尾添加对象

removeObjectAtIndex 移除指定位置的元素

objectEnumerator 获取数组对象的枚举器

 

23.枚举,使用枚举器

while(id thing = [enum nextobject])

{

//dosomething

}

24.快速枚举

10.5以后的新特性,while(NSString* str in array){//dosomething}

 

25.NSDictionary字典

dictionaryWithObjectsAndKeys 建立键值对,初始化对象

objectForKey 经过键获取对象

 

26.可变字典NSMutableDictionary

dictionaryWithCapacity 初始化可变字典,指定容量

setObject  forkey 添加键值对

removeObjectForKey 删除键值对

 

27.对于NSString和NSArray,不要继承,最好使用复合

 

28.NSNumber数值类

用于将原生数据类型装箱

numberWithChar  numberWithInt numberWithFloat numberWithBool 装箱

charValue intValue floatValue boolValue stringValue 拆箱

 

29.NSNumber实际上是NSValue的子类,NSValue能够封装任何值,

valueWithBytes 指定数据长度和数据类型就能装箱

getValue 用于提取数值

 

30.NSNull

nil的装箱数据结构,只有一个方法null

31.oc的方法分为两种,分别是实例方法和类方法,使用-定义的是实例方法 使用+定义的方法是类方法,类方法在没有实例的时候能够直接经过类名调用,如init方法,以下

类方法 +void init:(int)a,(int)b;

实例方法 -void init:(int)a,(int)b;

相关文章
相关标签/搜索