下面是一个代码示例,它引起了一些痛苦,并想知道是否有人可以提供帮助。我想在构造函数中设置类的'版本'属性,因为它使用了很多处理(所以不想在每次另一个类获得属性时重新计算它)。命名返回属性值的私有方法
如果我正确地命名该方法(未暴露给其他类),我将其称为- (NSString *)version
而不是getVersion
。然而,那么它将成为这个班的吸气者。
所以我的问题是,下面的代码包含一个错误地使用术语'get'作为前缀的方法,但如果我删除get,那么突然内部方法变成公共getter,我不想要它是。
有谁知道避免这种情况的最佳做法?
#pragma mark Constructor
- (id)init
{
self = [super init];
if (self) {
// Initialization code here
self.version = [self getVersion];
}
return self;
}
#pragma mark General
- (NSString *)getVersion
{
// some computation to work out version
}
'[self computedVersion]'? –
'版本'是一个公共属性? – nhgrif
我认为如果你调用'permformSelector:@selector(getVersion)'方法将会被调用...... – Francesco