การหลบหนีนี้หมายความว่าเธรดอื่น ๆ มีการอ้างอิงไปยังวัตถุก่อนที่ตัวสร้างจะกลับมา วิธีการโทรที่ยังไม่ได้สร้างวัตถุอาจทำให้เกิดข้อผิดพลาดที่สับสนดังนั้นควรหลีกเลี่ยงการหลบหนีนี้
การหลบหนีนี้ มักจะเกิดขึ้นเมื่อเริ่มเธรดหรือลงทะเบียนผู้ฟังในตัวสร้างเช่น:
คลาสสาธารณะ thisescape {public thisescape () {เธรดใหม่ (ใหม่ escaperunnable ()). start (); // ... } คลาสส่วนตัว escaperunnable ใช้งาน runnable {@Override public void run () {// ผ่าน thiseScape.His.his, วัตถุรอบนอกสามารถอ้างอิงได้ แต่ในเวลานี้วัตถุระดับรอบนอกอาจไม่ได้ถูกสร้างขึ้นสารละลาย
ชั้นเรียนสาธารณะ Thisescape {เธรดส่วนตัว t; สาธารณะ thisescape () {t = เธรดใหม่ (ใหม่ escaperunnable ()); // ... } public void init () {t.start (); } คลาสส่วนตัว escaperunnable ใช้งานได้ {@Override public public void run () {// ผ่าน thiseScape.Shis คุณสามารถอ้างถึงวัตถุคลาสอุปกรณ์ต่อพ่วง ในเวลานี้คุณสามารถมั่นใจได้ว่าวัตถุระดับส่วนปลายได้ถูกสร้างขึ้น}}}ข้างต้นเป็นเนื้อหาทั้งหมดที่รวบรวมโดยตัวแก้ไขในครั้งนี้ ขอบคุณสำหรับการสนับสนุน Wulin.com