前提・実現したいこと
JavaのClass(配列)から元クラスを取得する方法はあるのでしょうか。
Classに存在するメソッド名一覧を取得したいのですが
Classが配列の場合、配列のメソッド一覧が取得されてしまい元クラスのメソッド一覧が得られません。
MyClass.class.getMethods() <- MyClassのメソッド一覧が取得できる
MyClass[].class.getMethods() <- 配列のメソッド一覧となってしまう
文字列からクラスを取得しメソッド一覧を取得するコードを書いてみましたが
clazzから配列元のクラスを取得する方法はないのでしょうか。
該当のソースコード
// メソッド一覧を取得する Method[] methods = null; if (clazz.isArray()) { // 文字列からクラスを取得しメソッド一覧を取得 String name = clazz.getName(); name = name.substring(2, name.length() - 1); Class<?> c = Class.forName(name); methods = c.getMethods(); } else { methods = clazz.getMethods(); }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。