2010. 6. 29. 17:31
리플렉션은 프로그램이 자신의 모습을 보고 수정하는 행위.
ex> Spring 의 DI(dependecy injection)
Example
ex> Spring 의 DI(dependecy injection)
Example
Class<?> dymClass = null;
Method dymMethod = null;
try {
// 다이나믹 클래스 인스턴스 생성
dymClass = Class.forName(child.getListener());
Object obj = dymClass.newInstance();
dymMethod = obj.getClass().getMethod("setShell", new Class[]{Shell.class});
dymMethod.invoke(obj, new Object[]{parent.getShell()});
toolItem.addListener(SWT.Selection, ((Listener)obj));
toolItemMap.put(child.getId(), toolItem);
} catch(Exception e) {
}
Method dymMethod = null;
try {
// 다이나믹 클래스 인스턴스 생성
dymClass = Class.forName(child.getListener());
Object obj = dymClass.newInstance();
dymMethod = obj.getClass().getMethod("setShell", new Class[]{Shell.class});
dymMethod.invoke(obj, new Object[]{parent.getShell()});
toolItem.addListener(SWT.Selection, ((Listener)obj));
toolItemMap.put(child.getId(), toolItem);
} catch(Exception e) {
}