摘要: java反射

public class ReflectTest {

public static void main(String[] args) throws Exception {

//成员变量的反射

ReflectPoint pt1 = new ReflectPoint(3, 5);

Field fieldY = pt1.getClass().getField("y");

System.out.println(fieldY.get(pt1));//5 因为y是公有属性,可以直接得到

Field fieldX = pt1.getClass().getDeclaredField("x");

fieldX.setAccessible(true);

System.out.println(fieldX.get(pt1));//3 x是私有属性,使用getDeclaredField,然后setAcces sible(true)

changeStringValue(pt1);

System.out.println(pt1);//aall:aasketaall:itcast

}

private static void changeStringValue(Object obj) throws Exception {

Field[] fields = obj.getClass().getFields();

for(Field field :fields){

if(field.getType()==String.class){

String oldValue = (String) field.get(obj);

String newValue = oldValue.replace('b', 'a');

field.set(obj, newValue);

}

}

}

}

public class ReflectPoint {

private int x;

public int y;

public String str1 = "ball";

public String str2 = "basketball";

public String str3 = "itcast";

public ReflectPoint(int x, int y) {

super();

this.x = x;

this.y = y;

}

@Override

public String toString(){

return str1+":"+str2+":"+str3;

}

}

java反射成员变量_java反射之成员变量的反射相关推荐

  1. java实例变量成员变量_Java的类成员变量、实例变量、类变量,成员方法、实例方法、类方法...

    总是被这些相似的概念搞晕,查阅了资料后做个小总结,以变量为例,方法辨析类似. 1.多胞胎名字汇总辨析 成员变量和成员方法是范围最大的定义,提到成员变量就可以理解成你所定义在一个类体中的各类变量的统称, ...

  2. Java入参关键字_Java基础17-成员变量、return关键字和多参方法

    1.成员变量 在类中声明的变量为成员变量 //Dog类 class Dog{ String name;//成员变量 } public class Test1{ public static void m ...

  3. java基础变量_Java基础语法之变量和常量

    上行没有"{"时,下行代码与上行首字母对齐 标识符 概述 在Java中对变量.常量.函数和语句块都是有名字的,他们的名字统称为Java标识符.是为类.对象.方法.变量.接口和自定义 ...

  4. java定义私有变量_Java Reflection(七):私有变量和私有方法

    在通常的观点中从对象的外部访问私有变量以及方法是不允许的,但是Java反射机制可以做到这一点.使用这个功能并不困难,在进行单元测试时这个功能非常有效.本节会向你展示如何使用这个功能. 注意:这个功能只 ...

  5. java如何配置环境_java如何配置环境变量

    展开全部 首先下载好jdk,直接双击就可以安装,安装比较简单,基本都是点62616964757a686964616fe78988e69d8331333365653832击"下一步" ...

  6. java 成员函数_Java继承中成员变量和成员函数的覆盖

    关于继承中变量和方法的覆盖: 1, 与基类中同名的变量,会被派生类所覆盖(同时存在但是有独立的值),直接取值将是派生类的值,但是基类的变量也是同时存在的.如果通过派生类函数访问,得到派生类的值.如果通 ...

  7. java引用变量_java代码声明引用变量经验

    1.static只能修饰类的成员变量,不能修饰方法里的局部变量. 因为static是在类加载时候将成员变量存储进方法区的. 加载类的时候,是不去执行方法里的函数的.所以不会馆方法里的代码,自然就不会读 ...

  8. java静态代码块和静态变量_Java中的静态变量、静态方法与静态代码块

    我们知道类的生命周期分为装载.连接.初始化.使用和卸载的五个过程. 其中静态代码在类的初始化阶段被初始化.而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静态变 ...

  9. java方法中的循环里的变量_Java中循环声明变量方法

    Java循环声明变量 之前想这样做,但是网上一直搜索不到,下面是我的方式 项目中 // 得到需要查询外表的数量,然后分别创建缓存,插入数据多的时候如果编码在缓存里面,就不需要再去查询数据库了.key: ...

  10. java 定义泛型变量_Java不应该允许变量声明的泛型类型声明的任何原因?

    假设我们有一个这样的类: public class xx { public interface Foo { T getValue(); void setValue(T value); } public ...

最新文章

  1. 2022-2028年中国遇水膨胀橡胶行业市场研究及前瞻分析报告
  2. 剑指offer:面试题21. 调整数组顺序使奇数位于偶数前面
  3. ECMAScript5之JSON对象属性的遍历顺序
  4. 虚拟串口最大传输速率_【干货】详解RS232、RS485、RS422、串口amp;amp;握手
  5. Adb shell命令打电话测试4G
  6. cad显示有点暗_CAD参照的图框颜色太暗怎么调整?
  7. 10张让你大脑崩溃的图,敢接受挑战吗?
  8. 《金色梦乡》金句摘抄(十)
  9. 用C#做短信CMPP2.0/3.0协议 支持扩展号支持物理网卡
  10. VMware产品支持倒计时
  11. 2018 年,JavaScript 都经历了什么?
  12. Django数据获取操作
  13. 彻底讲清楚ZooKeeper分布式锁的实现原理【石杉的架构笔记】
  14. IDEA使用ideaVim, 配置自定义vim快捷键
  15. pywifi安装了,打了一行import pywifi还报错,解决方案来啦!
  16. ssms管理linux数据库,SQL Server 2017 Developer的下载、安装、配置及SSMS的下载安装配置(图文教程详解)...
  17. 强化学习常用算法总结
  18. 杭电数字电路课程设计-实验十-JK触发器设计实验
  19. 王者苹果服务器转安卓系统,王者荣耀苹果用户可以转?王者荣耀苹果用户转安卓的方法教程...
  20. 高级测试开发进阶知识详解

热门文章

  1. java反编译工具_ReverseTool逆向工具集合
  2. win配置环境变量以及一些变量换行类的小技巧
  3. java表格更新javadb_Java解析excel表格(新)
  4. yum命令报错在linux下,执行yum命令报错
  5. bp神经网络预测python代码_机器学习之多层神经网络(附Python代码和数据)
  6. HTML与CSS基础之否定伪类(四)
  7. 读书(附电子书)|小狗钱钱之白色的拉布拉多
  8. Promise 基础用法
  9. Gartner公布2017年十大战略科技发展趋势
  10. Eclipse打包出错——提示GC overhead limit exceeded