【问题标题】:Testing the main method of a generic class from another class [duplicate]从另一个类测试泛型类的主要方法[重复]
【发布时间】:2018-04-20 18:23:30
【问题描述】:

有人写了一个我想测试的通用类。它看起来像:

public class < E > foo{  
     public static void main(String[] args){
         do_stuff();
     }
}

我有另一个类尝试测试上述函数的 main 方法,如下所示:

public class Test{
   public static void main(String[] args){
        foo<Integer>.main({"hello"});
   }
}

为什么这不起作用?这样做的正确方法是什么? 注意:问题可能出在他们的代码而不是我的代码上,但我无法确认。

【问题讨论】:

    标签: java generics static


    【解决方案1】:

    首先,具有泛型类型的类将无法编译,因为您必须在名称后定义类型:public class foo&lt;E&gt;(注意您的约定!)。

    接下来,您可以使用以下命令调用具有特定泛型类型的方法,但在这种情况下该类型未使用:

    public class Test {
        public static void main(String[] args){
             foo.<Integer>main(new String[] {"hello"});
        }
    }
    

    您的编译器很可能会警告您不要这样做!

    【讨论】:

      猜你喜欢
      • 2016-06-28
      • 1970-01-01
      • 2014-12-19
      • 2019-08-26
      • 2014-08-02
      • 2011-08-09
      • 1970-01-01
      • 2013-03-07
      • 1970-01-01
      相关资源
      最近更新 更多