### Question:
ReflectUtils { public static Class<?> forName(String name) { try { return name2class(name); } catch (ClassNotFoundException e) { throw new IllegalStateException("Not found class " + name + ", cause: " + e.getMessage(), e); } }  static String getName(Class<?> c); static String getDesc(Class<?> c); static String desc2name(String desc); static Class<?> forName(String name); static Class<?> name2class(String name); static boolean isPrimitives(Class<?> cls); static boolean isPrimitive(Class<?> cls); static final char JVM_VOID; static final char JVM_BOOLEAN; static final char JVM_BYTE; static final char JVM_CHAR; static final char JVM_DOUBLE; static final char JVM_FLOAT; static final char JVM_INT; static final char JVM_LONG; static final char JVM_SHORT; }### Answer:
@Test public void testForName() throws ClassNotFoundException { int i = 12; System.out.println(ReflectUtils.getDesc(int.class)); System.out.println(ReflectUtils.getDesc(A.class)); String str = ReflectUtils.getDesc(int.class); System.out.println(ReflectUtils.name2class(ReflectUtils.desc2name(str))); }