java反射中getDeclaredMethods和getMethods的區別
getMethods
public Method[] getMethods() throws SecurityException
返回一個包含某些 Method 對象的數組,這些對象反映此 Class 對象所表示的類或接口(包括那些由該類或接口聲明的以及從超類和超接口繼承的那些的類或接口)的公共 member 方法。數組類返回從 Object 類繼承的所有(公共)member 方法。
返回數組中的元素沒有排序,也沒有任何特定的順序。
如果此 Class 對象表示沒有公共成員方法的類或接口,或者表示一個基本類型或 void,則此方法返回長度為 0 的數組。
getDeclaredMethods
public Method[] getDeclaredMethods() throws SecurityException
返回 Method 對象的一個數組,這些對象反映此 Class 對象表示的類或接口聲明的所有方法,包括公共、保護、默認(包)訪問和私有方法,但不包括繼承的方法。
返回數組中的元素沒有排序,也沒有任何特定的順序。
如果該類或接口不聲明任何方法,或者此 Class 對象表示一個基本類型、一個數組類或 void,則此方法返回一個長度為 0 的數組。類初始化方法 <clinit> 不包含在返回數組中。如果該類聲明帶有相同參數類型的多個公共成員方法,則它們都包含在返回的數組中。
原帖地址:https://www.blogjava.net/ycfdonews/articles/198622.html
最後更新:2017-04-03 20:19:35