【问题标题】:How to get class type for GenericTypes in java如何在java中获取泛型类型的类类型
【发布时间】:2017-06-25 04:05:30
【问题描述】:

我在 scala 中有以下代码

classOf[KafkaLog[Array[Byte], Array[Byte]]]

我想在 Java 中实现相同的功能,但这会引发 NPE

   getClass {
     Class<KafkaLog<byte[], byte[]>> clazzz = null;
     return clazzz;
    }

【问题讨论】:

  • 堆栈跟踪是什么?
  • 你的代码不能编译,更别说抛出任何异常了。

标签: java scala class generics types


【解决方案1】:

Java 中的等效代码是KafkaLog.class。是的,就这个。如果你真的需要 Class&lt;KafkaLog&lt;byte[], byte[]&gt;&gt; 类型的值,你应该重新考虑你的设计(如果你不能,IIRC 你必须做双重转换:(Class&lt;KafkaLog&lt;byte[], byte[]&gt;&gt;) (Class&lt;?&gt;) KafkaLog.class)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-13
    • 2011-01-24
    • 2013-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-11
    相关资源
    最近更新 更多