전편에서 작성한 리플렉션이 너무 신기해서 또 신기한 기능 없나 찾아보다가 생성자 없이 인스턴스를 찍어낼 수 있다는 미친 사실을 발견하고 진짜 되는지 테스트 해봤다
package com.spring.basic.core.reflection;
public class ForReflection {
public ForReflection() {
}
public void sayHello() {
System.out.println("Hello world!");
}
private void secret() {
System.out.println("이건 비밀 메서드인데;;");
}
}
package com.spring.basic.core.reflection;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class ReflectionTest {
public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException, InstantiationException {
Class<?> clazz = ForReflection.class;
Constructor<?> constructor = clazz.getConstructor();
ForReflection o = (ForReflection) constructor.newInstance();
o.sayHello();
}
}
이것의 실행결과에서 진짜 "Hello world!"가 찍힐까?

ㅇㅇ찍힌다 너무 신기하다