Java 我可以问一个类泛型需要什么类型吗?
我有一个CompletableFuture,其类型取决于从消息返回的结果:Java 我可以问一个类泛型需要什么类型吗?,java,generics,completable-future,Java,Generics,Completable Future,我有一个CompletableFuture,其类型取决于从消息返回的结果: public <T> CompletableFuture<T> getFuture( CompletableMessage message) { .. } 我已经可以明确指定泛型: CompletableFuture<UUID> a = getFuture(new SomeMessageA()); CompletableFuture<String> b =
public <T> CompletableFuture<T> getFuture(
CompletableMessage message)
{
..
}
我已经可以明确指定泛型:
CompletableFuture<UUID> a = getFuture(new SomeMessageA());
CompletableFuture<String> b = getFuture(new SomeMessageB());
CompletableFuture<Integer> c = getFuture(new SomeMessageC());
我是否可以在Java中执行类似的操作,或者我是否必须始终参考文档以获得预期的类型?最简单的方法是将
CompletableMessage
也设置为泛型,并指定其返回类型:
public interface CompletableMessage<T> {
...
完美的非常感谢你。
class SomeMessageA {
public:
typedef int future_t;
};
SomeMessageA::future_t a;
public interface CompletableMessage<T> {
...
public class SomeMessageA implements CompletableMessage<Uuid> {
...
public <T> CompletableFuture<T> getFuture(CompletableMessage<T> message) {
...