在Objective-C中,以下代码似乎将myobj.x
设置为3:
Foo *myobj = [[Foo alloc] init];
myobj.x = 3;
NSLog(@"%d", myobj.x);
然而,Foo有可能为x实现一个setter函数,该函数将拦截这个动作,例如将x设置为4。对x的读取也是如此:看起来只是在读取x的值的代码实际上可能正在命中Foo中的getX函数。你知道吗
在python中也可以这样做吗?执行以下代码时:
myobj = Foo()
myobj.x = 3
print myobj.x
有没有办法把myobj.x设置为4?或者print语句是否可能由于Foo中实现的恶意getter而显示4?你知道吗
你可以用一个
property
-我不明白你为什么要这么做。下面从物理上将该值设置为其他值,您可以修改getter的值以返回不同的值。你知道吗相关问题 更多 >
编程相关推荐