คลาสภายในคงที่ สามารถสร้างอินสแตนซ์ได้โดยไม่ต้องใช้ อินสแตนซ์ของคลาสภายนอก . โดยทั่วไป คลาสชั้นใน เป็นส่วนหนึ่งของ คลาสที่ซ้อนกัน เรียกว่า คลาสที่ซ้อนกันแบบไม่คงที่ ในชวา ประเภทของคลาสภายในคือ สมาชิกคลาสภายใน คลาสภายในที่ไม่ระบุชื่อ และ ชั้นในของท้องถิ่น
เราสามารถยกตัวอย่างคลาสภายในแบบคงที่ด้วยการสะท้อนโดยใช้ InnerClass.class.newInstance() . หากเราต้องการอินสแตนซ์ของคลาสภายนอกเพื่อสร้างอินสแตนซ์ของคลาสภายในที่ไม่คงที่ เราสามารถระบุได้ก่อน ใหม่ โอเปอเรเตอร์
ตัวอย่าง
import java.lang.reflect.*; public class InnerclassWithReflectionTest { public static void main(String args[]) { try { InnerClass inner = (InnerClass) InnerClass.class.newInstance(); inner.test(); } catch(Exception e) { e.printStackTrace(); } } // inner class static class InnerClass { public void test() { System.out.println("Welcome to TutorialsPoint !!!"); } } }
ผลลัพธ์
Welcome to TutorialsPoint !!!