2012-05-06 8 views
4

呼び出しメソッドと呼び出しメソッドはどちらも同じですか?呼び出すメソッドと呼ばれるメソッドとは何ですか?

私が知りたいのは、「メソッドを呼び出す」とは、ほとんどの場合、メインメソッドである別のメソッドまたはメインメソッド自体を呼び出すメソッドを意味しますか?

+11

呼び出し元が呼び出しを行い、呼び出されている呼び出し先を呼び出しています。 ;) –

答えて

20

呼び出しメソッドは、実際の呼び出しを含むメソッドです。呼び出されたメソッドが呼び出されたメソッドです。それらは違う。例:

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

// Called method 
void g() 
{ 
} 
+3

良い例ありがとう – sarsarahman

+0

この用語について@StuartGolodetz 'g'メソッドも別のメソッド(h();)を呼び出した場合は、呼び出し元*と*ワーカーメソッドの両方と見なされますか?また、 'g'メソッドがprintln( "something")のような標準的なJava APIメソッドを使用した場合はどうでしょうか。もう一度、そのような状況では発信者と職員の両方とみなされますか?私は技術的に知っていますが、どちらの場合も呼び出し元*と*ワーカーメソッドの両方になりますが、これらの条件が適用されない特別な状況があるかどうかを確認しています。 – Zippy

+0

@Zippy:関数は、特定の呼び出し*に関する呼び出し元または呼び出し先*です。 'g'が' h'を呼び出すならば、それは 'h'へのその呼び出しに関して呼び出し元です(そして' h'はその呼び出しに対する呼び出し先です)。 'g'関数は依然として独立して別の呼び出しの呼び出し先(この例では' f'で作成された呼び出し先)です。関数が一般的な呼び出し元(つまり、特定の呼び出しのコンテキスト外)として話すのは一般的ではありません。言い換えれば、少なくとも1つの呼び出しが他の呼び出しに存在するため、 'f 'は「呼び出し元」です。 'f'の中で機能します。 –

5

呼び出しメソッドは、実際の呼び出しを含むメソッドです。

呼び出されるメソッドが呼び出されます。それらは違う。

これらは、呼び出し元および呼び出し先メソッドとも呼ばれます。

たとえば法と呼ば

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

int callee(){ 
return 5; 
} 
0

は、方法の初期化を意味します。 呼び出しメソッドは、その初期化メソッドをどこで使用しているかを意味します。

+0

これは正しくありません。実際には、メソッドは呼び出し元と呼び出し元の両方に呼び出すことができます。あなたが話しているのは定義です。 – fejese

関連する問題