zoukankan      html  css  js  c++  java
  • 通过反射来输出一个类的(包括其父类)所有方法

    主函数:

    import java.lang.reflect.Method;
    import java.lang.reflect.Modifier;
    import java.util.Arrays;
    
    public class reflec {
        public static void main(String[] args) throws NoSuchMethodException, ClassNotFoundException {
            TestClass r = new TestClass();
            Class<?> c1 = Class.forName(TestClass.class.getName());
            while (c1!=null) {
                for(Method m : c1.getDeclaredMethods()){
                    System.out.println(Modifier.toString(m.getModifiers())+ " " +
    m.getReturnType().getCanonicalName() +" "+m.getName()+ Arrays.toString(m.getParameters()) ); } c1=c1.getSuperclass(); System.out.println("----to super class----"); } } }

    目标实体类:

    class TestClass{
        private int i;
        private int j;
        public int getI() {
            return i;
        }
    
        public void setI(int i) {
            this.i = i;
        }
    
        public int getJ() {
            return j;
        }
    
        public void setJ(int j) {
            this.j = j;
        }
    
        public int forSum(){
            return i+j;
    
        }
    }
    目标实体类

    运行结果:

    public int getI[]
    public void setI[int arg0]
    public int getJ[]
    public void setJ[int arg0]
    public int forSum[]
    ----to super class----
    protected void finalize[]
    public final void wait[long arg0, int arg1]
    public final native void wait[long arg0]
    public final void wait[]
    public boolean equals[java.lang.Object arg0]
    public java.lang.String toString[]
    public native int hashCode[]
    public final native java.lang.Class getClass[]
    protected native java.lang.Object clone[]
    private static native void registerNatives[]
    public final native void notify[]
    public final native void notifyAll[]
    ----to super class----

    Process finished with exit code 0

  • 相关阅读:
    Spring笔记:常用xml标签和属性 山上下了雪
    Spring笔记:Hello World 山上下了雪
    Spring笔记:bean的自动装配 山上下了雪
    IntelliJ IDEA 2020.3.3 x64破解到2099年
    每日长进计划
    idea测试类中的测试方法没有运行按钮
    删除所有的phpfpm进程命令
    高质量编程
    单例模式也能玩出花
    宝塔Linux面板安装命令
  • 原文地址:https://www.cnblogs.com/kincolle/p/7248248.html
Copyright © 2011-2022 走看看