【问题标题】:I want to implement generic java method passing argument as class object and defining method parameter as Class<T> or T type我想实现泛型 java 方法,将参数作为类对象传递,并将方法参数定义为 Class<T> 或 T 类型
【发布时间】:2016-06-17 10:30:34
【问题描述】:

我想实现应该传递类对象的通用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) 

【问题讨论】:

  • 还有什么问题?你的类定义如何?
  • 如果您的方法在方法签名中的返回类型之前使用泛型包含 。你能具体说明问题吗?
  • 问题是我没有在运行时获取 userProfileObject 和 wurflDataGenericObject 的实例

标签: java generics servlets generic-method


【解决方案1】:
  1. 首先,如果 T userProfileClass 和 T wurflDataGenericClass 是不同的类型,那么它们的类型应该不同。它们必须像 T1 userProfileClass 和 T2 wurflDataGenericClass 一样提及。

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

    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

  2. myClass a = new myClass();

【讨论】:

  • 是的,我会尝试这种方法。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-23
  • 1970-01-01
  • 2013-05-05
  • 1970-01-01
  • 1970-01-01
  • 2022-01-22
相关资源
最近更新 更多