在Objective-C中,在子类的定义中(可能在接口文件中),是否可以转换从超类继承的实例变量(ivar)?
我想这样做是因为我已经将超类的ivar定义为NSObject *session
,并且我想将子类的ivar转换为Facebook *session
,这样我就不必每次都投出它我发送的消息是Facebook
实例响应但NSObject
个实例没有响应。
答案 0 :(得分:2)
无法更改超类接口变量的类型,您可以做的一件事是添加一个getter方法,例如
- (Facebook *) getSession {
return (Facebook *)[self session];
}