zoukankan      html  css  js  c++  java
  • java 使用反射中的几个方法区别

    public void reflect2(){
          try {
              User user=new User();
              Field[]fields = user.getDeclaredFields();//通过class取出当前class中的所有字段
               for (Field field : fields) { 
                      System.out.println(field.getName()+" "+field.getType());
              }
         } catch (Exception e) {
               e.printStackTrace();
         }
    }

    * getFields()与getDeclaredFields()区别:

    getFields()只能访问类中声明为公有的字段,私有的字段它无法访问.getDeclaredFields()能访问类中所有的字段,与public,private,protect无关
    * getMethods()与getDeclaredMethods()区别:

    getMethods()只能访问类中声明为公有的方法,私有的方法它无法访问,能访问从其它类继承来的公有方法.getDeclaredFields()能访问类中所有的字段,与public,private,protect无关,不能访问从其它类继承来的方法
    * getConstructors()与getDeclaredConstructors()区别:getConstructors()只能访问类中声明为public的构造函数.getDeclaredConstructors()能访问类中所有的构造函数,与public,private,protect无关

  • 相关阅读:
    含有tuple的list按照tuple中的某一位进行排序
    python
    Python代码追踪(类似于bash -x的效果)
    cinder swift的区别
    C#中Main函数为什么要static
    C#编程.函数.委托
    C#编程.函数.Main()函数
    C#编程.函数.参数
    typedef int a[10];怎么解释?
    C#的DateTime得到特定日期
  • 原文地址:https://www.cnblogs.com/weinan2087/p/3123572.html
Copyright © 2011-2022 走看看