美文网首页从零学Java笔录凯哥Java-工作总结
Java中反射学习系列教程四-常用API方法(二)

Java中反射学习系列教程四-常用API方法(二)

作者: 凯哥Java | 来源:发表于2019-06-26 09:14 被阅读1次

本文是《Java中反射学习系列教程》中的第四篇文章。本文我们接着之前的讲解。

​先来看看今天学习主要内容:

​1:获取实例化对象的所有属性

2:获取实例化对象的所有方法

4.2.6 获取对象中属性

我们知道对象中的属性根据权限不同可以使用不同修饰符来修饰。这里我们就来研究public和private修饰的属性获取。

GetFields:获取所有public属性

GetDeclaredFields:获取所有属性。包含private的

Demo示例代码:

/**

* 获取属性

* 1:pubic属性获取

* 2:所有属性获取

*/

@Test

public void getFieldTest() throws Exception{

Class clazz1 = Class.forName("com.kaigejava.domain.Student");

//1:获取public的单个属性

Field addrField = clazz1.getField("addr");

log.info("获取public addr..");

//获取所有公开的属性

Field[] publicFieldS = clazz1.getFields();

for(int x = 0;x < publicFieldS.length;x++){

Field field = publicFieldS[x];

log.info("获取到所有pulibc的属性.当前获取第:{}个。属性名称为:{}",x,field.getName());

}

//获取单个属性(private)

Field privateSchooleName = clazz1.getDeclaredField("schoolName");

//获取所有属性 包含public private的

Field [] allField = clazz1.getDeclaredFields();

for(int x = 0;x < allField.length;x++){

Field field = allField[x];

log.info("获取到所有的属性.当前获取第:{}个。属性名称为:{}",x,field.getName());

}

}

查看student的属性:

运行结果:

4.2.7 获取对象中方法

方法和属性类似。都分为public和private的。所以:

获取public方法是:getMethod

获取所有方法(包含private的):getDeclaredMethod

这里咱们就只演示获取单个public方法:

Demo演示代码:

/**

* 获取方法

* @throws Exception

*/

@Test

public void getMethodTest()throws Exception{

Class clazz1 = Class.forName("com.kaigejava.domain.Student");

Class methodParams[] = new Class[]{String.class};

Method publicSetRealName = clazz1.getMethod("setRealName",methodParams);

log.info("方法名称为:{},方法参数为:{}",publicSetRealName.getName(),publicSetRealName.getGenericParameterTypes());

}

运行结果:

今日总结:

温馨提示:本文是系列教程中的一篇文章。

查看系列教程:http://www.kaigejava.com/article/detail/452

凯哥博客:www.kaigejava.com

凯哥公众号:凯哥Java(kaigejava)

相关文章

  • Java中反射学习系列教程四-常用API方法(二)

    本文是《Java中反射学习系列教程》中的第四篇文章。本文我们接着之前的讲解。 ​先来看看今天学习主要内容: ​1:...

  • Java中反射学习系列教程四-常用API方法(三)

    本文是《Java中反射学习系列教程》中的第五篇文章,如果想系统的学习反射技术,建议跟着本教程从第一篇文章开始。本文...

  • Java中反射学习系列教程三-常用API方法

    本文是《Java中反射学习系列教程》中的第三篇文章。本文我们接着之前的讲解。 先来看看今天学习主要内容: ​ 4....

  • Java中反射学习系列教程之一

    在上一个系列教程-《Java中注解学习系列教程》中解析自定义注解的时候用到了Java中一种技术--反射。其实在很多...

  • Java中反射学习系列教程-小案例-模拟spring创建bean

    本文是《Java中反射学习系列教程》中的第六篇文章,如果想系统的学习反射技术,建议跟着本教程从第一篇文章开始。本文...

  • Java中反射学习系列教程之二

    在上一篇文章《Java中反射学习系列教程之一》中我们学了什么是反射;反射中的反字怎么理解;以及反射的特点。今天我们...

  • Java 反射

    Java反射Java反射API获取Class对象通过反射创建实例对象,调用公共方法通过反射调用私有方法 一.Jav...

  • 反射

    一、 获取Class对象的三种方式: 二、 Java里面反射出来的类 三、 Constructor常用方法: 四、...

  • Java 反射机制(二)

    前言 在上篇 Java 反射机制(一) 介绍了一些 Java 反射相关的常用 API ,在知道了如何去使用反射之后...

  • Java反射常用API

    getMethods() getMethods()获取本类以及父类中所有public修饰符修饰的方法,包括本类和父...

网友评论

    本文标题:Java中反射学习系列教程四-常用API方法(二)

    本文链接:https://www.haomeiwen.com/subject/oypfcctx.html