什么是调用方法和被调用方法?

7

调用方法和被调用方法是否相同?

我想知道的是,“调用方法”是指调用另一个方法的方法,通常情况下是主方法,还是指主方法本身?


11
电话呼叫者正在拨打被呼叫者的电话。;) - Peter Lawrey
3个回答

26

调用方法是包含实际调用的方法;被调用方法是被调用的方法。它们是不同的。例如:

// Calling method
void f()
{
    g();
}

// Called method
void g()
{
}

关于这个术语@StuartGolodetz,如果'g'方法也调用了另一个方法(比如h();),那么它会被认为是调用者和工作方法吗?此外,如果'g'方法只是使用标准的Java API方法,例如println("something");,那么在这种情况下,'g'是否被认为是调用者和工作者?我知道从技术上讲,在这两种情况下,它都是调用者和工作者方法,但我想知道是否有任何特殊情况不适用这些术语。 - Zippy
@Zippy:在特定调用中,函数是调用者或被调用者。如果g调用h,那么它是该调用对于h的调用者(而h是该调用对于被调用者)。g函数仍然可以独立地成为另一个调用的被调用者(例如,在此示例中在f中进行的调用)。通常不会谈论一个函数作为一般的调用者(即在特定调用的上下文之外)-换句话说,不能因为f中存在至少一个对另一个函数的调用而说f是“调用者”。 - Stuart Golodetz

6

调用方法是包含实际调用的方法。

被调用方法是被调用的方法。它们是不同的。

它们也被称为“调用者”和“被调用者”方法。

例如:

int caller(){
int x=callee();
}

int callee(){
return 5;
}

0

调用方法意味着初始化一个方法。 调用方法意味着我们在使用已初始化的方法。


这不是正确的。事实上,当一个方法在调用自身时,它既可以被称为调用者,也可以被称为被调用者。你所说的是定义。 - fejese

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接