如何将值传递给继承类中的变量

时间:2013-10-01 12:03:59

标签: iphone ios objective-c

我有一个名为TimeLineViewController的类,它继承自MyViewController。我需要将值传递给从MyViewControllerTimeLineViewController的变量。我该怎么办?

MyViewController.h

@interface MyViewController : TimeLineViewController {
.....
}

TimeLineViewController.h我已分配String *str。从MyViewController.m我需要将值传递给String *str类中的TimeLineViewController变量。我怎么能这样做。

我从MyViewController.m尝试了以下内容,但都没有效果。

[super str]=@"hi";

4 个答案:

答案 0 :(得分:1)

继承点是使用现有功能并通过子类扩展它以满足特定需求

所以...如果您的TimeLineViewController继承自MyViewController,则无需再次在TimeLineViewController中声明该成员,您可以使用它,因为它已经为MyViewController声明了{1}}:

self.str = @"hi";

答案 1 :(得分:0)

如果str是类TimeLineViewController中的属性,则可以通过MyViewController中的继承访问它。因此,如果你在MyViewController中更改它,它也会改变为父亲。

记住:

   A    

   |

   B

如果在A中你有一个属性c,那么你可以B.c

阅读this

答案 2 :(得分:0)

来自苹果的文档,

  

实例变量可在声明它的类中访问   并在继承它的类中。所有实例变量都没有   显式范围指令具有@protected范围。

所以你可以使用

super.str = @"hi";

答案 3 :(得分:0)

你应该在TimeLineViewController中有setter或property。

然后你可以使用

    [self setStr:@""];

    self.str = @"";