1
このようなクラスされています。そこで、私はこの方法にメソッドは保護されていますが、リフレクションによってメソッドの修飾子を取得しました。修飾子はpublicです。 IDEは、Android Studioの
Class<MethodSubject> clz=MethodSubject.class;
Method[] methods=clz.getDeclaredMethods();
for(Method method:methods){
int modifier=method.getModifiers();
if ((modifier& Modifier.PUBLIC)==1){
Log.e("target,",method.toString());
}
}
を取得するためにリフレクションを使用し、その後、ログは
public class MethodSubject {
public String getString(String str) {
return "hello";
}
protected void setStr(String str) {
}
int getID(int t) {
return 100;
}
private void setID(int id) {
}
}
です:
public int ...MethodSubject.getID(int)
public String ...MethodSubject.getString(java.lang.String)
public void ...MethodSubject.setStr(java.lang.String)
なぜ修飾子変更されましたか?
正しいログを探していますか?私はあなたのシナリオをテストしたので、保護されている修飾子を持つ印刷方法名ではありません。 –
私には同じですが、かなり良いですか? –
私は何を言っているのでしょうか。 Eclipseでこれらのコードをテストしますが、うまくいきます。しかし、それがAndroidStuioの仕事であれば、ログは私がそこに書いているものです。 – Lyri