Javaに関して、私はすべての変数を私的に宣言し、一般的な慣習に当てはまるパブリックゲッターとセッターを生成することに非常に慣れています。私はしかし、それは好奇心を見つけるパブリック変数の使用によるパフォーマンスの向上?
:
String getValue() {
return value;
}
の代わり:
要求された値を代入して返すの外にいない機能を持つゲッターとセッターとの関係では、のようなメソッドを呼び出すためのパフォーマンスへの影響はありませんclassInstance.value;
コンパイラは、関数呼び出しで余分なサイクルが追加されないようにするためにここで何かしますか?そうでない場合、この理論的なヒットスノーボールは、より堅牢なアプリケーションで大ヒットにならないでしょうか?あなたがまたはアクセサメソッドを使用すべきでない理由は、この質問を求めていません
編集::明確にするため 、質問はあなたがアクセサを使用してヒットパフォーマンスを取るかどうかではありません。
非常に広い質問ですが、一般的にマイクロオプティマイゼーションを使用していないため、読みやすくすることが重要です。 –
十分に複雑なプログラムの範囲では、私はオーバーヘッドが無視できると思うでしょう – OldProgrammer
私はそれが広すぎるとは思わなかった。パブリック変数を使用してgetterとsetterメソッドを定義するとJavaで余分な作業が追加されますか? 個人的に、私はclassInstance.getValue()がclassInstance.valueより読みにくいとは思わない。 – anomeric