2016-08-10 3 views
1
方法について

反射dalvik.system.DexClassLoader.findClass()ないNoSuchMethodException

Ldalvik/system/DexClassLoader;->findClass(Ljava/lang/String;)Ljava/lang/Class;

そのClass.getMethod()次の呼び出しはNoSuchMethodExceptionで失敗ClassLoader

からDexClassLoader 継承:

Class.forName("dalvik.system.DexClassLoader")).getMethod("findClass",Class.forName("java.lang.String"))

私はこの呼び出しが失敗する理由を理解していません。私が何かを欠けていない限り、メソッドは継承され、返される必要があります。

答えて

1

findClassprotectedであるため、getMethod()で返されません。代わりにgetDeclaredMethod()を使用する必要があります。これは、privateprotectedのアクセスレベルメソッドも返します。