iOS学习(OC语言)知识点整理
一、OC基础知识
1)#import 用于导入头文件,预处理阶段加载引用,只加载一次。
2)OC 依赖于Foundation框架下的头文件Foundation.h,此文件必须引用加载。
3)相较于C语言的导入头文件,头文件需要加上条件编译(#ifndef #define #endif):防止头文件被多次包含
4)OC中关键字前面添加@符,字符串前面也需添加@符。
5)@autoreleasepool自动释放池:应用程序执行的语境,好处:应用程序会自动对内存进行管理
6)NSLog是OC中的输出函数,类似于C中printf,区别于printf,可以显示进程信息和时间,会自动换行,
输出显示格式为 NSLog(@"%@人民解放军","中国");//结果:中国人民解放军
7).h 文件中interface声明一个类,后面是类名(:NSOjbect 表示继承父类NSObject)@end表示类声明结束
8)interface 用于声明类 默认是@protected (受保护的成员);@interface中只能写方法的声明(不能写实现)
9).m文件内 @implementation中只能写方法的实现(不能写声明)
10)类的访问级别说明
1、@public 公有的成员,本类的成员方法,和其他的方法都可以访问
2、@protected 保护型的成员,本类和本类的子类的方法可以访问
3、@private 私有的成员,只能被本类的方法访问
4、@package 处于同一个框架中可以访问,介于private和public之间
11)类的命名规范遵循驼峰命名原则。
12)方法的声明,默认的是public方法;声明格式:+/- (返回类型) 方法名:参数
1、-(减号)声明的方法为实例方法,只能通过实例调用,可直接操作成员变量。
2、+(加号)声明的方法为类方法,只能用类名调用,不可直接操作成员变量,需要用self点出成员变量。
3、实例方法可以和类方法同名。
13)类实例化的两种方法
1、使用 alloc、init方法 例如: Person *p=[[Person alloc]init]; alloc表示为对象在堆中开辟一片内存空间;init 表示初始化类对象。
2、使用new关键字,例如: Person *p=[Person new]; 一般不建议使用此方法。
14)set和get方法的使用
1、set方法用于给某个成员变量赋值,一般以set开头,接着变量名,带一个参数,参数类型与成员变量类型相同,没有返回值。
2、get方法用于获取某个成员变量的值,是实例方法,一般与成员变量名相同,(可以不加get在方法前面),没有参数,有返回类型,返回类型与成员变量的类型相同。
15) 带多个参数的方法的使用;+/-(返回类型)标识符:(参数类型)参数名 标签名:(参数类型)参数 名…;第一个参数以后的
参数建议添加标签名,可增强代码 的可读性;不添加即为匿名标签. 例如: 1 -(void)setName:(NSString *)name andAge:(int)age ;
16)实例方法与类方法的区别
1、实例方法之间可以使用self互相调用,类方法不可以。
2、实例方法可以操作成员变量,类方法不可以。
3、类方法调用直接用类名,不需要另外构建实例。
17)self 表示当前对象/类(self在实例方法中指当前对象,在类方法中指当前类);可以访问当前对象的成员变量.