• java 中getDeclaredFields() 与getFields() 的区别


    java 中getDeclaredFields() 与getFields() 的区别

    getDeclaredFields()返回Class中所有的字段,包括私有字段。例证:

    Java代码  收藏代码
    1. package com.test.bean;  
    2.   
    3. import java.sql.Timestamp;  
    4.   
    5. public class Person2 {  
    6.     private int id;  
    7.     private int age;  
    8.     private String personName;  
    9.     private Timestamp birthdate;  
    10.     public String identitify;  
    11.     protected String address;  
    12.     String phone;  
    13.       
    14. }  
    15. @Test  
    16.     public void test_getDeclaredFields() {  
    17.         Field[]fields=Person2.class.getDeclaredFields();  
    18.         for (int i = 0; i < fields.length; i++) {  
    19.             Field field = fields[i];  
    20.             System.out.println(field.getName());  
    21.         }  
    22.     }  

     运行结果:

    id

    age

    personName

    birthdate

    identitify

    address

    phone

    getFields  只返回公共字段,即有public修饰的字段。例证:

    Java代码  收藏代码
    1. @Test  
    2.     public void test_getDeclaredFields() {  
    3.         Field[]fields=Person2.class.getFields();  
    4.         for (int i = 0; i < fields.length; i++) {  
    5.             Field field = fields[i];  
    6.             System.out.println(field.getName());  
    7.         }  
    8.     }  

     运行结果如下:

    identitify

    总结:

    (1)getDeclaredFields()返回Class中所有的字段,包括私有字段;

    (2)getFields  只返回公共字段,即有public修饰的字段

  • 相关阅读:
    C#中处理鼠标和键盘的事件
    C#中处理鼠标和键盘的事件
    C#中处理鼠标和键盘的事件
    mpich2安装
    算法题推箱子
    LINUX终端下windows盘的位置
    Linux头文件和库文件添加环境变量与GCC编译器添加INCLUDE与LIB环境变量
    第九章顺序容器重学C++之《 C++ PRIMER》
    sed中使用变量
    抛出异常
  • 原文地址:https://www.cnblogs.com/duanweishi/p/4480774.html
Copyright © 2020-2023  润新知