2

これはjava本の思考からの引用です

単一ルートの階層により、ガベージコレクター(Javaに便利に組み込まれている)の実装がはるかに簡単になります。必要なサポートを基本クラスにインストールできるため、ガベージコレクターはシステム内のすべてのオブジェクトに適切なメッセージを送信できます。単一ルートの階層と、参照を介してオブジェクトを操作するシステムがなければ、ガベージコレクターを実装することは困難です。

ガベージコレクターはどのようにしてシステム内のすべてのオブジェクトに適切なメッセージを送信できますか?はい、すべてのクラスはオブジェクトから派生していますが、そのメッセージはどのように送信されますか?

そのメッセージは何ですか?

これから何を達成しますか?


ノート

この質問は私の前の質問とは異なります。私もそれに対する適切な答えを見つけられませんでしたが!

4

2 に答える 2

1

著者はfinalize()、すべてのオブジェクトが持っているメソッドを参照していると思います。これは、ガベージコレクターによって呼び出されます。メッセージの送信=メソッドの呼び出し。

于 2013-01-06T16:10:13.237 に答える
1

この型Objectには、 から派生したオブジェクトについて知る必要があることを GC に通知する「隠し」フィールドがいくつか含まれていますObject。引用されたテキストで「メッセージ」という用語が使用されている理由はわかりませんが、GC がメモリのチャンクをどう処理するかを知るには、そのメモリのチャンクが何を表しているかを知る必要があります。さまざまな種類のオブジェクトにさまざまなヘッダーがあり、メモリのチャンクが何を表しているかを知る唯一の方法が、それを識別した参照の種類を知ることである場合、GC の仕事ははるかに困難になります。

于 2015-01-22T17:58:51.573 に答える