我有几个接口都具有相同的常量 - ID和ROOT.我还有一个方法,我传递一个对象,这个对象将是这些接口之一的实现.
如何根据传入的类动态检索常量的值 - 即我想要执行以下操作:
public void indexRootNode(Node node, Class rootNodeClass)
{
    indexService.index(node, rootNodeClass.getConstant('ID'), 
        rootNodeClass.getConstant('ROOT'));
}
在PHP中这很简单,但这在Java中是否可行?我已经看到使用常量上的访问器解决了这个问题,但我想直接检索常量.注释也不会帮助我.
谢谢
public void indexRootNode(Node node, Class rootNodeClass)
{
    Field idField = rootNodeClass.getField("ID");
    Object idValue = idField.get(null);
    Field roorField = rootNodeClass.getField("ROOT");
    Object rootValue = rootField.get(null);
    indexService.index(node, idValue, rootValue);
}
也许您可能需要将值转换为相应的类型.
| 归档时间: | 
 | 
| 查看次数: | 4423 次 | 
| 最近记录: |