Objective-C:在子类中抛出超级实例变量?

时间:2011-07-18 13:35:29

标签: objective-c inheritance casting instance-variables ivar

在Objective-C中,在子类的定义中(可能在接口文件中),是否可以转换从超类继承的实例变量(ivar)?

我想这样做是因为我已经将超类的ivar定义为NSObject *session,并且我想将子类的ivar转换为Facebook *session,这样我就不必每次都投出它我发送的消息是Facebook实例响应但NSObject个实例没有响应。

1 个答案:

答案 0 :(得分:2)

无法更改超类接口变量的类型,您可以做的一件事是添加一个getter方法,例如

- (Facebook *) getSession {

   return (Facebook *)[self session];

}