我正在开发一个使用本体启动算法的项目。换句话说,从语义数据库中检索算法的参数/返回值,以便可以使用SPARQL查询启动它们。
假设我想在执行后得到这种算法的结果,它具有特定的类型,但我必须以非常通用的方式存储它。我会做Object result = myAlgorithm(param1, param2, ...);
。这不允许我存储结果的类型以供稍后的转换。我正在考虑一个解决方案,但我不确定它在Java中是否合法:
public class Value {
Object o;
Class<?> type;
public Value(Object o, Class<?> type) {
this.o = o;
this.type = type;
}
Class<?> getType() { return type; }
Object getO() { return o; }
}
算法的返回类型也存储在数据库中。我知道这听起来有点令人费解,但我希望你明白我想做什么。
答案 0 :(得分:0)
每个对象都已将其保存为&PROBIN
方法,因此您不需要result.getClass()
字段。在您的处理代码中,您可以
Class<?> type