【发布时间】:2016-03-16 04:43:46
【问题描述】:
我正在尝试创建一个自定义ArgumentExtractor in Ninjaframework,我必须在其中创建一个实现ninja.params.ArgumentExtractor<T> 的类,该类具有public Class<T> getExtractedType() 方法
import java.util.Optional;
class OptionalParamExtractor implements ArgumentExtractor<Optional<String>> {
...
@Override
public Class<Optional<String>> getExtractedType() {
return Optional<String>.class; // Compiler don't let me do this.
}
}
在return Optional<String>.class; 行,出现语法错误。在这种情况下,如何正确返回 Class<Optional<String>> 类型的对象?我试过了
@Override
public Class<Optional<String>> getExtractedType() {
return Optional.of("").getClass();
}
但是没用,报错Type mismatch: cannot convert from Class<capture#1-of ? extends Optional> to Class<Optional<String>>
【问题讨论】:
-
你可以直接施放它并抑制警告吗?
return (Class<Optional<String>>) Optional.of("").getClass();
标签: java class reflection ninjaframework