@@ -0,0 +1,1010 @@
+package ch8_general_programming;%0D%0A%0D%0Aimport java.lang.reflect.InvocationTargetException;%0D%0Aimport java.lang.reflect.Method;%0D%0Aimport java.util.NoSuchElementException;%0D%0A%0D%0Apublic class item_53_prefer_interfaces_to_reflection %7B%0D%0A    public static void main(String%5B%5D args) %7B%0D%0A        System.out.println(%22I have no idea why anyone would need to use Reflection %22 +%0D%0A                           %22unless it's to utilize legacy code, or to implement the weird stuff Spring does for IOC%22);%0D%0A        System.out.println(%22Reflection lets you access constructors, methods and fields of a loaded class.%5Cn%22 +%0D%0A                           %22You can write a class that reflectively uses another class,%5Cn%22 +%0D%0A                           %22even if the class being used did not exist when the first class was compiled.%22);%0D%0A        System.out.println(%22You can mitigate the disadvantages of reflection by accessing a reflective instance%5Cn%22 +%0D%0A                           %22using an interface implemented by the reflected instance.%22);%0D%0A    %7D%0D%0A%7D

Add item 53