通常我们使用 @interface interface_name : parent_class <delegates> { …… } @end 方法在.h文件和.m文件中,我们综合了在.h文件中声明的variables的属性。 但是在一些代码中,@interface ….. @ end方法也保存在.m文件中。 这是什么意思? 他们有什么区别? 同时给出一些关于.m文件中定义的接口文件的getter和setter的信息… 提前致谢
我已经search了许多关于ObjC访问器和合成访问器的问题无济于事。 这个问题更多的是“帮我解决一个问题”的问题; 我不期待一个答案,但我宁愿寻找专家来衡量论据。 在Cocoa Touch类中,我会写这样的代码(其中soundEffects是一个合成的NSArray属性): id foo = [self.soundEffects objectAtIndex:1]; 一位同事要求我解释为什么上面比这行更好: id foo = [soundEffects objectAtIndex:1]; 那么从function上来说,情况也不例外。 我对前者的论点如下: self.soundEffects告诉所有其他编码人员在代码上工作,这是一个iVar,而不是一个局部范围的variables。 如果我们需要的话,我们可以把自定义逻辑放在soundEffects getter访问器中。 没有具体的原因,在Obj-C工作了一年之后,“觉得”是正确的。 他接受论点#1和#2作为有效的,但也给出了对位: 这不就是代码膨胀吗? 不应该允许一个类直接与自己的iVar交谈,而不必自己调用一个方法(getter)? 任何接受者?
我一直试图让我的头在getter和setter,而不是陷入。我已经读了JavaScript Getters和Setters和定义Getters和Setters ,只是没有得到它。 有人可以明确指出: 什么是吸气和二手的意图去做,和 给一些非常简单的例子?
我目前正在用几种不同的模式在Java中进行一个简单的游戏。 我已经扩展了一个主要的Game类,把主要的逻辑放在其他类中。 尽pipe如此,主要的游戏类仍然非常沉重。 在快速浏览我的代码之后,其中大部分是Getters和Setter(60%),而游戏逻辑真正需要的则是60%。 一些谷歌search声称吸气剂和定型剂是邪恶的,而其他人声称,他们是良好的面向对象实践和伟大的计划所必需的。 所以我该怎么做? 应该是哪一个? 我应该改变我的Getters和Setter为我的私有variables,还是应该坚持他们?
我来自PHP世界。 你能解释一下吸气剂和吸附剂是什么,可以给你一些例子吗?