A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© claud0623 中级黑马   /  2014-8-31 23:56  /  2212 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么我们要用get和set方法来封装呢?仅仅是为了使成员变量不被轻易访问或者修改?

9 个回复

倒序浏览
对的。。。。。。。。。。。。。。。。。。。。。。
回复 使用道具 举报
还有对变量进行约束,比如非负,以及其他各种制约...
回复 使用道具 举报
这是对外提供读取、修改成员变量的方法。
回复 使用道具 举报
可以在set方法中过滤我们不想要的值
回复 使用道具 举报 1 0
本帖最后由 小月格子猫 于 2014-9-2 22:17 编辑

1 ,set 与 get  这两种方法,成员变量的可读可写,都是取决get和set的
2 ,而学习了@property以后,你又会发现我们好像不用写get,和set了,写个@property全代替了,但如果我要是要
       求某个变量不能被访问或者不能被改写怎么办,你还得用set和get
3     在到后来,我们学习了retain,release,计数器,加一,减一,这个对象赋了一下值计数器加一下,那个对象
      挂掉了减 一 下计数器,我们加一,减一,都写在外面,会不会显得很乱,有点不符合封装的理念,没错
      set方法,能帮你解决这个问题,或者你要赋值,但又再为错误的赋值而烦恼,没错,set方法还是能帮你解决      等等 ,直到你学的越来越多,你就好发现set和get越来越多的好处
回复 使用道具 举报
,,,,,我刚刚看到这里   有点晕,,,,,,,,,,,,,,,,,
回复 使用道具 举报
我认为是为了引出封装功能这个概念,要把取值与赋值看成是一种功能而并非是一个过程。
回复 使用道具 举报
小月格子猫 发表于 2014-9-2 22:15
1 ,set 与 get  这两种方法,成员变量的可读可写,都是取决get和set的
2 ,而学习了@property以后,你又会 ...

说得很详细,赞一个!
回复 使用道具 举报
符合封装的概念吧
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马