我正在做一些编程,我也在同时阅读一些代码而且我遇到了这段代码
-(id)init
{
if ((self = [super init]))
{
some code....
[self initEnemy];
}
return self;
}
以下,它有
-(void)initEnemy
{
more code....
[self resetEnemy];
}
然后..
-(void)resetEnemy
{
more code.. etc..
}
我看到它的方式是第一种方法init
调用方法initEnemy
,然后调用resetEnemy
。基本上一种方法带来另一种方法等等。
成功形成一个算法(你无法真正说出因为我已经显示了很少的代码)。我正确地看着它吗?
另外,我可以在执行-(id)init
时解释return self;
方法内部发生的情况。
答案 0 :(得分:1)
是的,你正在正确地阅读这个执行顺序。
当方法中发生“返回”时,控制权返回“调用者”方法(最初调用它的人)。 “self”表示“self”的值应该交还给调用者。 (在这种情况下,“self”指的是在-init
中初始化对象的实例。如果您想了解有关初始值设定项的更多信息,可以将其分解为更具体的问题。)