首页 > 代码库 > oc语法的基础(二)

oc语法的基础(二)

一.实例变量可见度

1.实例变量在初始化只做少量设置,后期需要操作

2.实例变量有区分可见度,共三种:实例变量访问修饰符号

@public(公有的):实例变量可以任意被操作

@protected(受保护的,默认的):实例变量只能在该类和其子类中使用

@private(私有的):实例变量只能在该类中访问


二.方法

1.方法有两种:类方法和实例方法
2.类方法:只能类使用,例如 +(id)alloc  注:类方法中不能使用实例方法
3.实例方法:只能对象使用,例如:-(void)say;

方法的声明
 方法类型标识符  返回类型  参数形容词  参数类型  参数名
-  (void)replaceObjectAtIndex:(NSUInteger)index  withObject:(id)anObject

方法名
1.删除:类型标识,返回值类型,参数类型,参数名,空格 例如:  replaceObjectAtIndex:withObject:
2.类中不能出现同名方法。
3.“:”标识参数,不能省略

方法的使用
1.oc中没有“student调用 say“这种表述
2.在oc 中使用消息发送机制:[接收者  方法];
3.正确的表述:给student对象发送say消息。
a.student接收到消息,即say方法;
b.student找到say方法,并执行

自定义初始化方法
1.-(id)init 这个初始化方法指南给实例变量设置默认值,比灵活
2.-(id)initWithName:  自定义初始化方法,根据需求定义初始化方法

三.复合
1.多个组件组合到一起,形成一个整体,然后使用整体进行工作,这种组合称为复合
2.oc中,类的实例变量由其他类型组成


#import
1.导入头文件,即将导入的头文件中的内容,赋值到当前类;
2.#import“ ”导入自定义类,#import<>导入类库中的头文件;
3.功能类似c语言中的#include,但是可以避免头文件被重复包含;
4.容易出现循环引用问题;

@class
1.标识字符串作为类名使用,无法导入类的接口内容
2.有效的避免了嵌套循环引用


oc语法的基础(二)