4.封装
封装: 提供对实例变量读写的一套方法,对实例变量的读写只能通过对象的特定方法来完成.
封装,好处: 1)将变化隔离 2)便于使用 3)提高重用性 4)提高安全性
原则: 将数据隐藏起来,只能用此类的方法函数才可以访问或者设置数据,不可被外部任意存储 是面向对象设计本质。提供公共方法对其进行访问!
封装的思路: 为实例变量提供一个对象方法,用于读取实例变量的值(getter) 为实例变量提供一个对象方法,用于设置实例变量的值(setter) 封装步骤:
// 提供一个 设置 _age 实例变量值的方法 称之为:setter方法 // 规范: // 1) set方法一定是一个对象方法 // 2) set方法一定没有返回值 // 3) set方法一定以set开头,后面跟 去掉下划线的实例变量名,并且首字母要大写 // 4) set方法一定要有参数,并且参数的类型和实例变量的类型要一致 // 5) set方法的形参一般是 去掉下划线的 实例变量名 // 6) set方法的实现(.m中实现)一定要给实例变量赋值(用形参给实例变量赋值)
// 提供一个 获取 _age 实例变量值的方法 称之为:getter方法 // 规范: // 1) get方法一定是一个对象方法 // 2) get方法一定有返回值,并且返回值类型,必须和实例变量的类型一致 // 3) get方法的方法名,必须是去掉下划线的实例变量名 // 4) get方法一定没有参数 // 5) get方法一定是返回实例变量的值
注意:
(1)在实际的开发中,不一定set和get方法都会 |