5

Java では、final キーワードが構築と初期化を分離しているように見えます。これは、配列と同様の方法でオブジェクトのメモリ使用をブロックする意図を示唆しています。

非再帰的なオブジェクト階層があり、すべてのフィールドが final である場合、そのメモリは 1 回だけ割り当てる必要があり、キャッシュに連続して割り当てることもできます。JVMは実際にこれを行いますか? いいえの場合、なぜですか?

4

1 に答える 1

3

簡単な答えは次のとおりです。

クラスまたはメソッドが final であるかどうかに基づいて、Hotspot にクラス/メソッドの最適化はありません。

詳細については、この記事を参照してください。

于 2012-10-22T13:55:23.907 に答える