OC基础:getter和setter,@public @protected @private

@public

1.公开的,公共的,可以在类的内部和外部访问.

2.类的内部:实例变量名

3.类的外部:对象->实例变量名

@protected

1.受保护的,只能在本类和子类中可以访问

2.类的内部:实例变量名

3.类的外部:通过设置器setter和访问器getter访问

@private

1.私有的,只能在本类中可以访问

2.类的内部:实例变量名

3.类的外部:通过设置器setter和访问器getter访问

总:@public 在所有文件均可访问.@protected只能在本类和子类中可以访问@priavte只能在本类中可以访问

设置器 setter

1.setter 一定是对象方法,以-开头

2.返回值一定是void

3.一定以set开头,后跟实例变量名去除_,实例变量名首字母大写.如:setAge

4.一定要有参数,参数类型必须和实例变量的类型一致,参数名为实例变量名去除_

NSInteger _age

-(void)setAge:(NSInteger)age;

访问器 getter

1.getter 一定是对象方法,以-开头

2.一定有返回值,返回值类型和实例变量的类型一致

3.方法名只为实例变量名去除_即可.如:age

NSInteger _age

-(NSInteger)Age;

—————————————————————————————————————————————–

封装

目的:为了实现高类聚.低耦合.为了隐藏数据,只能通过此类的方法才可以访问,修改数据.不被外界随意修改,降低误用性.

类聚:模块成员之间的关系程度.

耦合:模块之间的关系程度.

—————————————————————————————————————————————–

对象方法 +

在对象方法中能够使用实例对象

对象方法只能由对象调用 [对象名 方法]

类方法 –

在类方法中不能使用实例变量,因为类方法由类来调用.并没有创建储存空间.

类方法只能由类来调用 [类 方法]

类方法的好处:不依赖对象,执行效率高,尽量使用类方法

类方法的场合:方法中不需要实例方法的时候,使用类方法更简洁

—————————————————————————————————————————————–

提取方法名

-(void)say:(NSString)name; //方法名为say:

-(void)say:(NSString *)name withCount:(NSInteger)count; //方法名为say:withCount:

去除-(+)

去掉返回值

去掉参数类型和参数名

,生命不息,在任何一种博大的辉煌之后,都掩藏着许多鲜为人知的艰难的奋斗。

OC基础:getter和setter,@public @protected @private

相关文章:

你感兴趣的文章:

标签云: