OC2

1.封装的目的:就是为了达到高内聚低耦合
内聚:模块各部分之间的关联程度
耦合:就是模块与模块之间的关联程度
内聚和耦合有一个条件改变必然导致另一个条件改变(耦合低了,内聚必然增高)(eg:甲乙两座城市的例子)

2.

@public  实例变量可见度修饰的修饰是变量的范围:从书写的哪一行开始到下一个修饰符结束,或者碰到大括号就结束 

@protected 被保护的,被protected修饰的实例变量,只能在类的内部直接访问,和子类中直接访问;直接就是通过实例变量名类访问

@private 私有的。被private修饰的实例变量只能在类的内部直接访问,子类中也不可以访问


被protected修饰的实例变量不能在类的外部访问,这时需要给这些实例变量添加赋值的方法


总结      可见度修饰符                          类的内部                                    子类
                   public                                 可以直接访问                            可以直接访问
                   protected                           可以直接访问                            可以直接访问
                   private                                可以直接访问                            不可以直接访问
系统默认的实例变量可见度修饰符:@protected
@public修饰的实例变量虽然可以再类的内部和外部直接访问,但是他破坏了类的封装思想,所有以后(祥哥)建议不要使用


3.设置器set方法
设置器的书写格式:
a.对象方法   以 - 号开头
b.返回值类型一定是void
c.方法名一定以set开头,后面跟上实例变量去掉下划线,并且首字母大写
d.一定有参数,并且参数类型和实例变量的类型要保持一致,参数名就是实例变量去掉下划线
age set方法
NSInteger _age;
- (void)setAge:(NSInteger)age;
访问器  get方法
访问器的书写格式:
a.对象方法  以 - 号开头
b.一定有返回值,且返回值的类型要和实例变量的类型保持一致
c.方法名是实例变量去掉下划线
 ageget方法
 NSInteger _age;
- (NSInteger)age;







4.oc里的方法分为两种方法,对象方法 和 类方法
提取方法名的格式
a.无返无参去掉方法类型 (- +)
b.去掉返回值类型
方法名   sayHello
- (void)sayHello;
+ (void)sayHello;

有一个参数的对象方法和类方法
提取方法名
a.去掉方法类型 (- +)
b.去掉返回值类型
c.去掉参数类型和参数名
冒号是方法名的一部分不能省略
方法名   sayHi:
- (void)sayHi:(NSString *)name;
+ (
void)sayHi:(NSString *)name;

多个参数的时候,参数和参数名之间要加一个空格
有几个冒号代表这个方法有几个参数
runCicle : withCount :
- (void)runCircle:(NSString *)road withCount:(NSInteger)count;
+ (
void)runCircle:(NSString *)road withCount:(NSInteger
)count;

5.
stu.name = @"尹君";//等价于==[stu setName:@"尹君"]
   
    NSString *name = stu.name;//等价于==[stu.name]

点语法后面有赋值运算符(=)的时候调用的是实例变量的set方法
   点语法后面没有赋值运算符(=)的时候调用的是实例变量的get方法
点语法只是系统提供一种快速调用set和get方法的快捷方式,只有写了实例变量的set和get方法才能使用点语法






6.类方法的好处和使用场合:不依赖与对象,执行效率高,能使用类方法解决的问题尽量使用类方法


7.自定义方法
好处:把初始化和对实例变量的赋值结合到一起

8.@class告诉编译器class后面的字符串是一个类,这时不会引入类的头文件,使用@class的好处可以防止重复引入头文件
#import ”Man“可以引入头文件,并且头文件之被引入一次
#include ”“这是c语言引入头文件的方法,他不会防止重复引用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值