属性封装和点语法

属性的封装   setter   和 getter 方法
为什么要封装属性,为什么不能把成员变量设置为public?
/*
 在实际的开发中,绝对不允许任何一个成员变量为public
 所有的成员变量都必须不能够在外部直接使用—>的方法,因为这样做不能够保证我们数据的安全,很有可能出现脏数据(错误数据)
 如果类内部的成员变量需要依赖外部传入值,那么我们就要提供对应的set方法供外部访问
*/

/*
 setter 方法,是专门用来提供给外部进行属性赋值
 <1.一定是对象方法
 <2.一定没有返回值类型
 <3.参数数据类型,一定与具体的成员变量数据类型相同
 <4.一定以set开头,后面接成员变量的名称,驼峰命名规则
 */


/*
 getter 方法,是专门用来提供给外部获取成员变量的值的接口
 <1.一定是对象方法
 <2.一定有返回值,并且返回值数据类型要与具体的成员变量的数据类型相同
 <3.一定没有参数
 <4.直接使用成员变量的名称命名
 */

点语法

 // 点语法
        /*
        点语法不是直接访问成员变量,本质是转化成为相对应的getter和setter方法
         */
        Gun *gun = [[Gun alloc]init];
        // 直接访问成员变量
//        gun->_bulletCount
        gun.bulletCount = 200; // 即[gun setBulletCount:200];
        NSLog(@"bulletCount:%d",gun.bulletCount); // 即[gun bulletCount];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值