初心者プログラマからの最も一般的な質問は、Java でパラメータがどのように渡されるかということです。通常、プログラミング言語は値渡しと参照渡しを使用してパラメータをメソッドに渡します。ただし、Java はこれら 2 つのメソッドをサポートせず、代わりに値渡しを使用してプリミティブ型および参照型の値を渡します。この記事では、サンプル プログラムを通じてパラメーターを値で渡す方法を学びます。
Java のストレージ メカニズムを理解することから議論を始めましょう。参照変数、メソッド、クラスの名前はスタックに保存され、それらの値はヒープに保存されます。ただし、プリミティブとその値はスタック メモリに直接保存されます。
前に述べたように、Java は基本型と参照型の値の受け渡しのみをサポートします。つまり、メソッドが呼び出されるときに、各パラメーター値のコピーがメソッドに渡されます。
int、double、Boolean などの基本型の場合、パラメーターの値は変数の元の値と同じです。たとえば、値が 10 の変数「x」があり、「x」を引数としてメソッドに渡すと、メソッドは元の値 10 のコピーを引数として受け取ります。参照変数はスタックに格納されるため、配列、オブジェクト、文字列などの参照型の場合、パラメーターの値は指定された変数の参照またはアドレスになります。たとえば、要素 {1, 2, 3} を含む配列 'arr' があり、パラメーターとして 'arr' をメソッドに渡すと、メソッドは 'arr' のアドレスの参照またはコピーを受け取ります。パラメータ。
Java でのパラメータの受け渡しに関連するいくつかの用語について説明しましょう
ユーザー定義メソッド###文法### リーリー ###ここ、###
nonAccessModifier - static や Final などのメソッドの追加機能または動作を示します。
return_Type - メソッドが返すデータ型。メソッドが何も返さない場合は、 void キーワードを使用します。
パラメータとパラメータParameters
- メソッド定義中に渡され、パラメーターのプレースホルダーとして使用される名前付き変数です。実際にパラメータを指定されたメソッドにインポートします。これらによりメソッドを一般化することができます。ここでの一般化とは、必要に応じてさまざまなデータに対して単一のメソッドを再利用できることを意味します。Parameters - メソッドが呼び出されたときに渡される実際の値です。これらは、メソッド定義で渡されるパラメーターの型と一致する必要があります。
値の受け渡し方法この方法でパラメータを渡すと、パラメータ値のコピーが指定されたメソッドに渡されます。このメソッドはコピーを変更できますが、パラメータの元の値に影響を与えることはできません。
参照渡しJava プログラムはパラメータの受け渡しを表示します
###例### リーリー ###出力### リーリー
出力でわかるように、プリミティブ型「val1」の場合、その値は「changeVal」メソッドを呼び出した後も変化しません。参照型「arr」の場合、「changeAray」メソッドを呼び出した後に値が変更されます。以上がJavaではパラメータはどのように渡されるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。