標籤:
通過反射得到方法:
方法關鍵字 |
含義 |
getDeclaredMethods() |
擷取所有的方法 |
getReturnType() |
獲得方法的放回類型 |
getParameterTypes() |
獲得方法的傳入參數類型 |
getDeclaredMethod("方法名",參數類型.class,……) |
獲得特定的方法 |
|
|
構造方法關鍵字 |
含義 |
getDeclaredConstructors() |
擷取所有的構造方法 |
getDeclaredConstructor(參數類型.class,……) |
擷取特定的構造方法 |
|
|
父類和父介面 |
含義 |
getSuperclass() |
擷取某類的父類 |
getInterfaces() |
擷取某類實現的介面 |
程式碼範例:
@Test public void fun() throws ClassNotFoundException{ //構建類 Class<?> cls = Class.forName("fanshe.User"); //得到屬性 Field[] fields = cls.getDeclaredFields(); for(Field field :fields){ System.out.println( Modifier.toString(field.getModifiers())+"\n"+//得到屬性的修飾 field.getType().getSimpleName()+"\n"+//得到屬性的類型 field.getName()//得到屬性的名字 ); } //得到方法 Method[] methods = cls.getDeclaredMethods(); for(Method method : methods){ System.out.println( Modifier.toString(method.getModifiers())+"\n"+//得到方法的修飾 method.getReturnType().getSimpleName()+"\n"+//得到傳回值的類型 method.getName()//得到名字 ); } System.out.println(cls.getSimpleName()); }
java 反射機制