修改属性的值有三种不同的方式:
1、直接修改属性的值
使用句点表示法直接访问并设置汽车的属性odometer_reading
2、通过方法修改属性的值
通过新增一个方法update_odometer(),完成后通过调用这个方法,将里程表读数设置为23
扩展:对新增的方法update_odometer()添加一些功能,禁止任何人将里程表读数往回调
我把里程表的默认值0改为50后测试代码如下:
我把里程表的默认值改为50后,再调用方法update_odometer()将里程表读数改为23,23比50小,所以代码运行结果提示不能把里程表往回调,代码运行正确。再把23改为63,看看结果怎样
代码运行结果正确,说明添加的功能实现了在修改前检查指定读数是否合理
3、通过方法对属性的值进行递增
使用方法increment_odometer(),指定属性的值在原来的基础上再增加了多少
注意:
上面方法1中通过直接访问属性来修改我们想要的任何值,但是方法2、3中通过新增一个方法来实现,会存在把里程表往回调的风险,所以写代码时要特别注意细节。