引数とは、以下のURLに次のように定義されていました。


「メソッドを呼び出す際に渡された値を受け取る変数。」
http://www.kab-studio.biz/Programing/JavaA2Z/Wor …

質問:引数とは、「あるメソッドに入力する(渡す)値」ですよね?それなのに、「メソッドを呼び出す際に渡された値を受け取る変数。」とかいてありますが、これはどういうことですか?
java初心者の私でもわかりやすいように解説してくだされば幸いです。

質問2:上記URLに以下のようなことも書かれていました。
「呼び出す際に「メソッド名( 引数に渡す値 );」という書式で「引数の変数」に「引数に渡す値」をコピーすることができる。
このコピーは、変数の代入と全く同じである。」

これもよく意味がわかりません。
とくに、「引数の変数」という記述がよくわかりません。また、なぜ変数の代入と同じなのですか?

うーん、、よくわからない。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

No1です。



>質問1:この「定義」が実際のプログラミングにおいて何に対応するかわかりません。
>例えば、メソッド宣言がその定義に対応しますか?

メソッド宣言とかメソッド定義とかいうものが相当します。正式文法書を読んだこと無いのでどちらが正確な用語か知りません。
Cだと「関数定義」なのですが。それもあって、先の回答では「定義」と書きました。

>質問2:「メソッドを呼び出す際に渡された値を受け取る変数。」と書いてある文の「値を受け取る変数」とは、詰まるところ実引数でなく仮引数のことを指しているのですか?

そうです。

>そして、「メソッドを呼び出す際に渡された値」とは実引数のことことで、この実引数をメソッドを実行する際に入力しますが、それを受け取るのが仮引数として定義された変数ということでしょうか?

そうです。
    • good
    • 0
この回答へのお礼

お返事遅れてしまい大変申し訳ありませんでした。。

ありがとうございます!
疑問点すっきりしました!

お礼日時:2011/04/25 02:06

学校の数学なんかで



f(x) = x*2 + 1

とするとき f(2) は何になる?
なんて感じの問題を見たことありません?

この問題の場合は x に 2 が代入されたものとして計算するわけですが、
これと考え方は一緒です。

Java風に言えば

f(x) というメソッドがあって、これは x という変数が引数として定義されているわけです。

f(2) とすると自動的に x に 2 が代入されて x*2 + 1 が計算されるわけですね。

多くのプログラミング言語は数学的な理論や考え方が元になって作られていることが多いですよ。


大学の教科書みたいな抽象的な文章の羅列だけを見て悩まずに
実際のプログラムを見て作って実行してみてみることをお勧めしますよっと。

この回答への補足

丁重なご回答誠にありがとうございます!
ご回答を拝読した上で、疑問点が沸いたので、再度質問します

>これは x という変数が引数として定義されているわけです。

質問1:この「定義」が実際のプログラミングにおいて何に対応するかわかりません。
例えば、メソッド宣言がその定義に対応しますか?
例えば、public static void main(String args[]){ とか。

質問2:「メソッドを呼び出す際に渡された値を受け取る変数。」と書いてある文の「値を受け取る変数」とは、詰まるところ実引数でなく仮引数のことを指しているのですか?
そして、「メソッドを呼び出す際に渡された値」とは実引数のことことで、この実引数をメソッドを実行する際に入力しますが、それを受け取るのが仮引数として定義された変数ということでしょうか?

補足日時:2011/04/22 14:17
    • good
    • 0

一般には、実引数と仮引数という言葉があります。


定義:
public void abc(int x, int y) { 。。。。。 };

呼び出し:
abc(10, a);

x や y が仮引数で、10 や a が実引数です。

メソッドの呼び出しは、x=10; y=a; してから 。。。。。。 の部分を実行するのとほぼ同じです。

この回答への補足

丁重なご回答誠にありがとうございます!

追加で質問させていただきます!

質問1:この「定義」が実際のプログラミングにおいて何に対応するかわかりません。
例えば、メソッド宣言がその定義に対応しますか?
例えば、public static void main(String args[]){ とか。

質問2:「メソッドを呼び出す際に渡された値を受け取る変数。」と書いてある文の「値を受け取る変数」とは、詰まるところ実引数でなく仮引数のことを指しているのですか?
そして、「メソッドを呼び出す際に渡された値」とは実引数のことことで、この実引数をメソッドを実行する際に入力しますが、それを受け取るのが仮引数として定義された変数ということでしょうか?

補足日時:2011/04/22 14:17
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング