【发布时间】:2011-12-04 03:37:43
【问题描述】:
当我在“Cocoa 应用程序”中编写代码时,我可以避免不使用 @property "bla bla bla" 和 @synthesize “……”
并且仍然用我声明的变量做我想做的事。比如……
IBOutlet NSTextField *textField;
IBOutlet NSTextView *viewField;
然后在这些变量下面简单地构建方法。
-(IBAction)buttonPressed:(id)sender;
-(int)adding;
然后我可以进入 .m 文件,我可以做类似的事情
-(IBAction)buttonPressed:(id)sender {
int myVariable = [self adding];
[viewField insertText:[NSString stringWithFormat:@".... %i", myVariable]];
}
-(int)adding {
int myAge = [textField intValue];
int myVariable = 100 - myAge;
return myVariable;
}
我不明白为什么我可以在没有事先制作任何 setter 和 getter 的情况下完成这一切。
谁能解释一下。谢谢。
哦,还有一件事..
如果一个变量只在声明它的方法中有效,为什么我能做其他事情..
例如
-(int)myMethod {
int variableA = 50;
}
-(int)myotherMethod {
int variableA + 100;
}
它会给我答案 150..
“myotherMethod”如何知道 variableA 等于 50。我以为他们无法访问彼此的变量..
【问题讨论】:
标签: objective-c variables methods setter getter