我想实现泛型java方法传递参数作为类对象并将方法参数定义为Class <t>或T类型

时间:2016-06-17 10:30:35

标签: java generics servlets generic-method

我想实现它应该传递类对象的通用java方法 在方法参数

例如:

我的方法定义在不同的项目类中

public String getRtbAd(HttpServletRequest request, T userProfileClass,
            List<String> systemControlDetails, T wurflDataGenericClass,String redisConnectionUrl, String dimension, Short rtbTimeOut) 
{

//My Bussiness logic

}

在这里,我正在调用来自不同项目类的方法

public String getRtbAd(request, userProfileObject,
            systemControlDetails, wurflDataGenericObject,redisConnectionUrl, dimension, rtbTimeOut) 

1 个答案:

答案 0 :(得分:1)

  1. 首先,如果T userProfileClass和T wurflDataGenericClass是不同类型,那么它们应该具有不同的文字作为其类型。必须像T1 userProfileClass和T2 wurflDataGenericClass一样提及它们。

  2. 提及此方法的类应接受以下类型: -

  3.     public class myClass {        
            public String getRtbAd(HttpServletRequest request, T1 userProfileClass, List systemControlDetails, T2 wurflDataGenericClass,String redisConnectionUrl, String dimension, Short rtbTimeOut){     
                }        
            }        
            myClass  a = new myClass();
            String str = a.getRtbAd();

    =========== 我真的不确定为什么这个评论窗口没有正确显示我的通用代码。以下没有显示。

    1. myClass&lt; T1,T2>

    2. myClass&lt; ProfileClassName,DataGenericClassName&gt; a = new myClass&lt; ProfileClassName,DataGenericClassName&gt;();