[解決済み] メソッドパラメータの最終キーワード [重複]。
2022-04-24 09:51:45
質問
というようなメソッドによく出会います。
public void foo(final String a, final int[] b, final Object1 c){
}
このメソッドが final パラメータを渡さずに呼び出された場合はどうなりますか。つまり、後で変更される (final と宣言されていない) Object1 は、このメソッドに問題なく渡すことができます。
解決方法は?
Javaはメソッドにパラメータを送信する前に、常にパラメータのコピーを作成します。これは、finalが呼び出し側のコードにとって何の違いもないことを意味します。これは、メソッドの内部で変数を再代入できないことを意味するだけです。
finalオブジェクトがあっても、オブジェクトの属性を変更することは可能であることに注意してください。これは、Javaのオブジェクトは、実際にはオブジェクトへのポインタであるためです。そして、実際のオブジェクトではなく、ポインタだけがコピーされます(そして、あなたのメソッドではfinalとなります)。
関連
-
[解決済み] JVM起動時のパラメータ「-Xms」「-Xmx」とは何ですか?
-
Intellij IDEAのエラー「CreateProcess error=2, system could not find specified file」に対する完璧な解決策です。
-
Java(1)仕上げの基本概念+eclipseのインストール構成
-
[解決済み] Javaオプションパラメータ
-
[解決済み] Javaにおける "final class "の意味とは?
-
[解決済み] なぜJava 8のOptionalは引数で使ってはいけないのか
-
[解決済み] Javaの "final "キーワードはどのように機能するのでしょうか?(オブジェクトを修正することは可能です。)
-
[解決済み] Javaリフレクションを用いた静的なプライベートfinalフィールドの変更
-
[解決済み】finalとeffectly finalの違いについて
-
[解決済み】Javaでfinalキーワードを使用するとパフォーマンスが向上しますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Java エラー報告 スレッド "main" での例外 java.util.NoSuchElementException
-
ファインバグタイプ
-
this()の呼び出しはコンストラクタ本体の最初の文でなければならない 例外解決と原因分析
-
VMの初期化中にエラーが発生しました java/lang/NoClassDefFoundError: java/lang/Object
-
linux run jarfile Invalid or corrupt jarfile error.
-
[オリジナル】java学習ノート【II】よくあるエラー クラスパス上のクラスファイルが見つからない、またはアクセスできない場合
-
org.glassfish.jersey.servlet.ServletContainer
-
スレッド "main" で例外発生 java.net.BindException: アドレスは既に使用中です。NET_Bind
-
javax.net.ssl.SSLException: 読み取りエラー: ssl=0xdeae5100: システムコール中の I/O エラー、接続 res
-
java 例外。Javaツールの初期化