パフォーマンスの問題があるかどうかを知りたかっただけです
1) 1 つの Java ファイルで 2 つのクラスを使用する。
2) 内部 Java クラスの使用。
内部データ構造とサポートクラスに使用したい。また、どちらが性能的に優れているか教えてください。
パフォーマンスの問題があるかどうかを知りたかっただけです
1) 1 つの Java ファイルで 2 つのクラスを使用する。
2) 内部 Java クラスの使用。
内部データ構造とサポートクラスに使用したい。また、どちらが性能的に優れているか教えてください。
クラスのソース コードが 1 つの Java ファイルまたは 2 つの個別の Java ファイルにあるという事実は、バイトコードには影響しません。どちらもまったく同じバイトコードになります。
内部クラスは、それを囲むクラスのフィールドとメソッドにアクセスできることを除いて、他のクラスと違いはありません。パフォーマンスへの影響は、基本的に存在しません。
@EricSteinに同意します。実際のパフォーマンスの問題が発生する前に、パフォーマンスについて心配する必要はありません。読みやすさ、保守のしやすさ、理解のしやすさに努めてください。標準では、ソース ファイルごとに 1 つの最上位クラスを作成します。この基準を尊重する必要があります。
同じファイルに 2 つのクラスを作成することと、内部クラスを作成することに違いはありません。
Sine Java コンパイラは.class
、内部クラスの有無に関係なく、クラスごとに異なるファイルを生成します。
したがって、実行時に違いはありません。
誰かが実稼働環境で実際の問題に気付くまで、パフォーマンスについて心配する必要はありません。それ以外は時期尚早の最適化です。
ただし、1 つの Java ファイルで 2 つの最上位クラスを使用しないでください。それは悪いコードの匂いです。
初めにすること、
2つを1inner class
つに比較して書いている場合、私は少し同意しません。classes
file
内部クラスは、設計仕様として外部クラスにバインドされます。
そして、2つのクラスを同じように書くのfile
はあなた次第です(個人的な好みとして考えてください) issues
。
パフォーマンスの問題はありません。一度そのファイルをコンパイルすると.class
、それぞれに対して個別に生成されるため、class.