黑马程序员技术交流社区

标题: 关于OC set get方法的疑问 [打印本页]

作者: x65396731    时间: 2014-8-1 15:42
标题: 关于OC set get方法的疑问
本帖最后由 x65396731 于 2014-8-1 15:49 编辑

  既然成员变量已经被禁止修改了,为什么还可以通过set get方法来赋值呢?
谢谢了
作者: Jr_711    时间: 2014-8-1 16:17
我视频刚学到OC的内存管理,

你的问题好抽象  禁止修改是什么意思?
作者: 枫·殇    时间: 2014-8-1 16:46
Jr_711 发表于 2014-8-1 16:17
我视频刚学到OC的内存管理,

你的问题好抽象  禁止修改是什么意思?

还是不懂啊
作者: -(_)-    时间: 2014-8-2 00:15
成员变量, 变量的值是可以修改的,  常量的值才是固定的. set与get是主要让外界可以去修改类的属性. 不是很明白楼主你的意思.
作者: ★彬★卍囧神    时间: 2014-8-2 21:48
没有禁止的说法吧,好像自有私有的说法,
作者: 大龄产妇    时间: 2014-8-2 23:33
单独成员变量没有getter 和setter 的时候,默认是受保护的,受保护能够让类内和子类的方法(即C语言的函数)内部都能拿到并且修改成员变量的值。
如果要在别的类中看得见 这个类中成员变量,那么就要通过getter 和setter方法。
成员变量 之所以是成员变量?是为了让类内访问,类外访问的是方法和属性。何为属性呢?就是成员变量通过@property这个关键字系统自动赋予了getter和setter ,这样类外如果想要访问成员变量,取值就通过getter 返回值给你,赋值就setter,传进去我就修改成员变量内部的值。
这回能理解几份了吧!
作者: zhs    时间: 2014-8-4 14:33
set和get方法的主要作用为不让外界直接访问和直接修改,而不是彻底禁止访问和修改。
之前为用对象直接访问和修改,现在的调用set和get方法间接访问和修改
作者: 周易    时间: 2014-8-5 20:00
get set不是成员变量那样只是简单的赋值,提供的是一个方法,里面可以有其他的运算。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2