IOS 阶段学习第11天札记(OC基础知识)

IOS 阶段学习第11天笔记(OC基础知识)

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、+(加号)声明的方法为类方法,只能用类名调用,不可直接操作成员变量。

      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) 带多个参数的方法的使用;+/-(返回类型)标识符:(参数类型)参数名 标签名:(参数类型)参数 名…;第一个参数以后的参数建议添加标签名,可增强代码的可读性;

      添加即为匿名标签。例如:-(void)setName:(NSString *)name andAge:(int)age ;

16)实例方法与类方法的区别

     1、实例方法之间可以使用self互相调用,类方法不可以。

     2、实例方法可以操作成员变量,类方法不可以。

     3、类方法调用直接用类名,不需要另外构建实例。

 17)self 表示当前对象/类(self在实例方法中指当前对象,在类方法中指当前类);可以访问当前对象的成员变量.