相关疑难解决方法(0)

Java反射:按声明顺序获取字段和方法

有没有办法按照声明的顺序使用反射获取类声明的字段(和方法)?根据该文件,方法和字段的顺序返回的getFields(),getDeclaredFields()等是不确定的.

使用Java反射中建议的注释可以指定像索引之类的东西:类字段和方法的顺序是否标准化?

有没有更好的选择,即不必手动指定索引?

现在在你问我需要什么之前:我们有一个方法,它将一个非常大的数据结构作为输入,并对其进行冗长的计算.为了创建单元测试,我们创建了一个方法,该方法接受输入对象和输出实例,并创建Java源代码(设置输入,调用计算方法,然后断言正确的结果)作为输出.当字段按声明顺序编写时,此代码更易读.

java reflection junit

28
推荐指数
3
解决办法
1万
查看次数

获取声明的方法,使它们出现在源代码中

情况似乎是异常的,但我被要求构建序列化器,它将通过连接"get"方法的结果将对象解析为字符串.值应与源代码文件中声明的"get"等效值的顺序相同.

所以,例如,我们有

 Class testBean1{
  public String getValue1(){
   return "value1";
  }

  public String getValue2(){
   return "value2";
  }
 }
Run Code Online (Sandbox Code Playgroud)

结果应该是:

"value1 - value2"
Run Code Online (Sandbox Code Playgroud)

不是

"value2 - value1"
Run Code Online (Sandbox Code Playgroud)

Class根据文档,它不能用对象完成.但是我想知道我是否可以在"*.class"文件中找到这些信息还是丢失了?如果存在这样的数据,也许有人知道为此目的准备使用的工具?如果无法找到此类信息,请提出最专业的实现目标的方法.我想为应该序列化的类的getter添加某种自定义注释.

java reflection

10
推荐指数
1
解决办法
5962
查看次数

标签 统计

java ×2

reflection ×2

junit ×1