繁体   English   中英

Java中通用类型的实例

[英]instance of generic type in Java

我想为一些具有相同参数集的方法写一些“工厂”。 到目前为止,这是我的代码(如果IDE不允许它通过,那就太错了)

 public <T> T callServer(String param1, String param2, String param3){
    if (T instanceof Type1 ){
        return (T) callFunctionServerType1(param1,  param2, param3);
    }
    else if (T instanceof Type2)
        return  (T) callFunctionServerType2(param1,  param2, param3);
    return null;
}

IDE表示期望表达式 ,并在if语句(if(T ...))之后强调每个T thas。 您能帮我解决这个问题吗?

您可以将所需的T类作为附加参数传递

public <T> T callServer(String param1, String param2, String param3, Class<? extends T> returnClass)
{
  if (Type1.class.isAssignableFrom(returnClass)) {
     ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM