`

get**()与getDeclared**()区别

 
阅读更多

getFields()getDeclaredFields()区别 

 博客分类:

 java

  Java代码  

 

1.package study.reflection;     
2.    
3.public class People {     
4.public String name = null;     
5.private String sex = null;     
6.private String age = null;     
7.private String tel = null;     
8.private String address = null;     
9.public static String s = null;     
10.static {     
11.   System.out.println("loading People");     
12.}     
13.    
14.public static void showPeople() {     
15.    
16.}     
17.    
18.public People(String name) {     
19.   this.name = name;     
20.}     
21.    
22.private People() {     
23.   this.name = name;     
24.}     
25.    
26.private void showPeopleInfo() {     
27.   System.out.println(name + " " + sex + " " + age + " " + tel + " "    
28.     + address);     
29.}     
30.    
31.public String getName() {     
32.   return name;     
33.}     
34.    
35.public void setName(String name) {     
36.   this.name = name;     
37.}     
38.    
39.public String getSex() {     
40.   return sex;     
41.}     
42.    
43.public void setSex(String sex) {     
44.   this.sex = sex;     
45.}     
46.    
47.public String getAge() {     
48.   return age;     
49.}     
50.    
51.public void setAge(String age) {     
52.   this.age = age;     
53.}     
54.    
55.public String getTel() {     
56.   return tel;     
57.}     
58.    
59.public void setTel(String tel) {     
60.   this.tel = tel;     
61.}     
62.    
63.public String getAddress() {     
64.   return address;     
65.}     
66.    
67.public void setAddress(String address) {     
68.   this.address = address;     
69.}     
70.    
71.}     
72.    
73.package esg;     
74.    
75.import java.lang.reflect.Constructor;     
76.import java.lang.reflect.Field;     
77.import java.lang.reflect.Method;     
78.    
79.import study.reflection.People;     
80.    
81.public class Esg {     
82.    
83.public static void main(String[] a) throws ClassNotFoundException {     
84.   Class c1 = People.class;     
85.    
86.   Field[] fs = c1.getFields();     
87.   System.out.println("*******getFields()*********");     
88.   for (int i = 0; i < fs.length; i++) {     
89.    System.out.println(fs[i].getName());     
90.   }     
91.   System.out.println("*******getDeclaredFields()*********");     
92.   fs = c1.getDeclaredFields();     
93.   for (int i = 0; i < fs.length; i++) {     
94.    System.out.println(fs[i].getName());     
95.   }     
96.   System.out.println("*******getMethods()*********");     
97.   Method[] md = c1.getMethods();     
98.   for (int i = 0; i < md.length; i++) {     
99.    System.out.println(md[i].getName());     
100.   }     
101.   System.out.println("*******getDeclaredMethods()*********");     
102.   md = c1.getDeclaredMethods();     
103.   for (int i = 0; i < md.length; i++) {     
104.    System.out.println(md[i].getName());     
105.   }     
106.    
107.   System.out.println("*******getConstructors()*********");     
108.   Constructor[] con = c1.getConstructors();     
109.   for (int i = 0; i < con.length; i++) {     
110.    System.out.println(con[i].getName());     
111.   }     
112.   System.out.println("*******getDeclaredConstructors()*********");     
113.   con = c1.getDeclaredConstructors();     
114.   for (int i = 0; i < con.length; i++) {     
115.    System.out.println(con[i].getName());     
116.   }     
117.}     
118.}    

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

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

getConstructors()getDeclaredConstructors()区别:getConstructors()只能访问类中声明为public的构造函数.getDeclaredConstructors()能访问类中所有的构造函数,public,private,protect无关  

<!--EndFragment-->

分享到:
评论

相关推荐

    ajax POST 与GET提交的区别

    ### AJAX POST 与 GET 提交的区别详解 #### 一、GET与POST基本概念及应用场景 在探讨AJAX中GET和POST的区别之前,我们先来了解一下这两种请求方式的基本概念。 **GET**请求通常用于获取资源信息,它将参数拼接到...

    get、post区别

    理解GET与POST的区别对于掌握Web开发至关重要。 ### GET与POST的基本区别 #### 1. 数据传输位置 - **GET**:参数通过URL进行传递,数据附在URL之后,以问号“?”分隔URL和传输数据,并且多个参数之间用“&”符号...

    get和post的区别

    ### GET与POST方法的区别 在Web开发中,GET与POST是最常见的两种HTTP请求方式,它们在功能、安全性、数据传输等方面存在显著差异。本文将基于提供的文件内容对这两种方法进行详细解析。 #### 1. 基本概念 - **GET...

    session的get与load比较

    本文将深入探讨`get`与`load`两种方法的区别及其应用场景。 #### 一、基本概念 在Hibernate中,`Session`接口提供了`get`和`load`两种方法来获取数据库中的实体对象。 1. **get** 方法:尝试从当前Session的缓存...

    网页中post/get

    #### 二、GET与POST的区别 **1. 安全性** - **GET**:GET请求方式通常用于获取资源,其参数会直接显示在URL中。这种方式的安全性较低,不适合传输敏感信息。 - **POST**:POST请求方式用于发送数据到服务器进行...

    post and get

    接下来,我们将详细探讨`POST`与`GET`之间的区别,并结合具体示例来帮助理解这些概念。 #### 一、基本定义 - **GET**:此方法用于从服务器请求资源。它是最常见的HTTP方法之一,主要通过URL传递参数。 - **POST**...

    get_post的区别

    ### GET与POST方法的区别 #### 一、定义与工作原理 在ASP(Active Server Pages)开发中,GET和POST是两种常见的HTTP请求方法,用于客户端向服务器发送数据。理解这两种方法的区别对于正确处理用户输入至关重要。 ...

    Get还是Host好

    ### Get还是Post:选择依据与应用情境 #### 一、GET与POST的基本概念 在讨论如何选择GET或POST之前,我们需要先了解这两种HTTP请求方法的基本概念。 - **GET**:GET请求主要用于从服务器检索信息。当客户端(如...

    doget dopost区别

    #### 二、GET 与 POST 的核心区别 ##### 1. 数据传输位置 - **GET**:参数数据队列加到提交表单的 ACTION 属性所指的 URL 中,即数据附在 URL 后面,通过 URL 传输数据。 - **POST**:数据放置在 HTTP 请求的消息...

    深入理解get与post方法的差别

    深入理解GET与POST方法的差别:HTTP协议解析 在探讨GET与POST方法的差别之前,我们首先需要了解HTTP协议的基本概念。HTTP(HyperText Transfer Protocol)超文本传输协议,是互联网上应用最为广泛的一种网络协议,...

    jsp中post和get传输方式的区别

    ### jsp中post和get传输方式的区别 在Web开发领域,特别是使用Java Server Pages (JSP) 进行网页开发时,GET与POST是两种最常见的HTTP请求方法。这两种方法各有其适用场景及特点,理解它们之间的区别对于提高网站的...

    get和post请求的区别.pdf

    ### GET和POST请求的区别 #### 一、概述 在HTTP协议中,GET和POST是最常见的两种请求方法。这两种方法在数据传输、安全性、数据量、数据类型等方面具有显著的不同。理解这些区别对于合理设计和实现Web应用至关重要...

    HttpGet.rar_c语言 http_http get_httpget_linux c httpget_网页

    标题中的"HttpGet.rar_c语言 http_http get_httpget_linux c httpget_网页"表明这是一个与C语言编程相关的项目,主要涉及HTTP协议的GET方法,适用于Linux操作系统。这个项目可能是一个简单的命令行工具,用于从Web...

    S7-200SMART PLC无需编程,轻松实现GET和PUT的S7通信.docx

    #### 二、GET与PUT简介 - **GET**:用于从远程PLC读取数据到本地PLC。 - **PUT**:用于将本地PLC的数据发送到远程PLC。 #### 三、准备工作 在开始配置之前,请确保已经安装了Micro/WIN SMART软件,并且熟悉其基本...

    由get组成的常见短语.pdf

    但可以推测应该与“get”相关的短语搭配,如“get along with sb.”(与某人相处)。 了解这些“get”短语和句式结构对于提高英语水平和流畅度至关重要,它们在日常对话和写作中极为常见。熟练掌握这些表达方式能...

    中高考常考turn、have、cut、get、put、take词组_(英语+翻译).doc

    【中高考常考英语词组】是学生们在备考过程中必须掌握的重要内容,这些词组涵盖了动词turn、have、cut、get、put、take与其他词的搭配,它们在日常生活和学术交流中广泛应用,也是衡量英语水平的关键指标。...

    Winget 离线安装包 LTSC Server Winget

    4. **Desktop framework.url** 和 **UI.Xaml2.7.0.url**:这两个文件看起来是链接文件,分别指向与Winget相关的开发框架和用户界面库的详细信息,可能是开发者文档或者更新信息的链接,帮助用户了解更多的技术细节或...

Global site tag (gtag.js) - Google Analytics