学习了封装,现在总结一下
不封装的缺点:
当一个类把自己的属性暴露给外部时,那么该类就失去了对属性的管理权
不封装的优点:
将数据隐藏起来,只有用此类的方法函数才可以访问或者设置数据,不可被外部任意存储是面向对象的本质,降低了数据被乱用的可能性。
在oc语言中,使用@interface和@implementation来处理类
封装的实现步骤:
1、定义设置实例变量(setter)和访问实例变量(getter)的方法
在开发过程中,考虑到安全性要求,我们一般不在成员变量前面使用@public、@protected等关键字修饰,而是使用set方法来为对象提供成员变量的值。在set方法的内部也可以对一些不合理的赋值进行筛选过滤。
set的方法作用:为外界提供一个设置成员变量的方法
命名规范:
(1)方法名必须以set开头
(2)set后面跟上成员变量的名字,首字母大写
(3)返回值一定是void
(4)一定要接收一个参数,而且参数类型需要和成员变量的类型一致
(5)形参名不能和成员名一样
set设置的好处:
(1)不让数据暴露在外,保证了数据的安全性
(2)对设置的数据进行过滤
get方法的作用:为调用者返回对象内部的成员变量
命名规范:
(1)一定有返回值。返回值的类型和成员变量的类型一致
(2)方法名和去掉下划线成员变量名一样
(3)不需要接收任何参数 |
|