java的反射機制之getDeclaredMethods和getMethods的區別

getMethods() java

          返回一個包含某些 Method 對象的數組,這些對象反映此 Class 對象所表示的類或接口(包括那些由該類或接口聲明的以及從超類和超接口繼承的那些的類或接口)的公共 member 方法。注意: 返回數組中的元素沒有排序,也沒有任何特定的順序。數組

 1 package staticMethodReflect;  2  
 3 import java.lang.reflect.Method;  4   
 5 class ForMethod{  6       //聲明靜態方法 
 7       public static void sayHello(String name){  8            System. out.println( "你好" +name +"!!!" );  9  } 10       public String generateNum( Integer max, Integer min){ 11             return (Math.random()*( max- min)+ min)+ ""; 12  } 13 } 14 public class method { 15     
16     public static void main(String[] args){ 17         //建立ForMethod類對象 
18         ForMethod fm = new ForMethod(); 19          //獲取ForMethod類對象對用的Class對象 
20          Class<?> fmc = fm.getClass(); 21          //獲取能夠訪問的對象的對應的Method數組 
22         Method[] md = fmc.getMethods(); 23         
24         for(int i=0;i<md.length;i++){ 25  System.out.println(md[i].getName()); 26  } 27  } 28   }

 

每次運行的結果順序都不太同樣。dom

getDeclaredMethods() spa

        返回 Method 對象的一個數組,這些對象反映此 Class 對象表示的類或接口聲明的全部方法,包括公共、保護、默認(包)訪問和私有方法,但不包括繼承的方法。返回數組中的元素沒有排序,也沒有任何特定的順序。.net

 1 package staticMethodReflect;  2  
 3 import java.lang.reflect.Method;  4   
 5 class ForMethod{  6       //聲明靜態方法 
 7       public static void sayHello(String name){  8            System. out.println( "你好" +name +"!!!" );  9  } 10       public String generateNum( Integer max, Integer min){ 11             return (Math.random()*( max- min)+ min)+ ""; 12  } 13 } 14 public class method { 15     
16     public static void main(String[] args){ 17         //建立ForMethod類對象 
18         ForMethod fm = new ForMethod(); 19          //獲取ForMethod類對象對用的Class對象 
20          Class<?> fmc = fm.getClass(); 21          //獲取能夠訪問的對象的對應的Method數組 
22         Method[] md = fmc.getDeclaredMethods(); 23         
24         for(int i=0;i<md.length;i++){ 25  System.out.println(md[i].getName()); 26  } 27     }

調用getDeclaredMethods只打印了本類的方法,沒有打印從父類繼承的方法。code

本文轉自: https://blog.csdn.net/hanxueyu666/article/details/71502143對象

相關文章
相關標籤/搜索