정적 내부 클래스 외부 클래스의 인스턴스 없이도 인스턴스화할 수 있습니다. . 일반적으로 내부 클래스 중첩 클래스의 일부입니다. , 비정적 중첩 클래스 라고 함 자바에서. 내부 클래스의 유형은 멤버 내부 클래스, 익명 내부 클래스, 및 로컬 내부 클래스
InnerClass.class.newInstance()를 사용하여 리플렉션을 사용하여 정적 내부 클래스를 인스턴스화할 수 있습니다. . 비정적 내부 클래스를 인스턴스화하기 위해 외부 클래스의 인스턴스가 필요한 경우 new 연산자.
예시
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 !!!