このエスケープは、他のスレッドがコンストラクターが戻る前にオブジェクトへの参照を保持することを意味します。まだオブジェクトを構築していないメソッドを呼び出すと、混乱するエラーが発生する可能性があるため、この脱出は避ける必要があります。
この脱出は、スレッドを起動したり、次のようなコンストラクターにリスナーを登録するときに発生します。
public class thiseScape {public thiseScape(){new Stread(new Escaperunnable())。start(); // ...}プライベートクラスのEscaperunnable Runnable {@Override public void run(){// thisescape.を介して、周辺クラスのオブジェクトを参照することができますが、現時点では、この時点ではまだ構築されていない可能性があります。解決
パブリッククラスThiseScape {プライベートスレッドT; public thiseScape(){t = newスレッド(new Escaperunnable()); // ...} public void init(){t.start(); }プライベートクラスEscaperunnable Runnable {@Override public void run(){// thisescape.を介して、周辺クラスオブジェクトを参照できます。この時点で、周辺クラスのオブジェクトが構築されていることを確認できます}}}上記は、今回エディターによってまとめられたすべてのコンテンツです。 wulin.comへのご支援ありがとうございます。