java - 获取 java.lang.Class 实例时未经检查或不安全的操作

标签 java reflection

当我使用此代码时

Class clm = itt.apa.labs.Message.class;

if (!(clm.isAssignableFrom(cl))) {
  System.out.println("Class not implements Message!");
  System.exit(1);
}

我得到的结果是这样的:

[javac] Note: /.../Step5.java uses unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.

但是当我这样做时:

if (!(itt.apa.labs.Message.class.isAssignableFrom(cl))) {
  System.out.println("Class not implements Message!");
  System.exit(1);
}

我没有任何笔记。

我已经阅读了一些有关泛型的内容,但我不明白为什么在这种情况下会发生这种情况。

有什么帮助吗?谁能解释一下为什么?

最佳答案

Class clm

应该是

Class<itt.apa.labs.Message> clm

类是泛型类型,您将其用作原始类型。

关于java - 获取 java.lang.Class 实例时未经检查或不安全的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21937429/

相关文章:

仅通过反射调用 Java 方法。注释?

JAVA:静态方法在执行过程中对性能有很大影响吗?

java - 为什么有必要在泛型通配符中读取和 super 写入的情况下进行扩展?

c++ - 如何实例化一个只知道其名称的对象?

.net - 为什么运行时将泛型类型显示为 "GenericType` n"?

java - 从反射调用的方法传播 RuntimeException

java - 用 Java 模仿 Office 2007 的缩放栏(修改后的 JSlider)

java - 文件字数统计

java - 我如何在 Spring 3 MVC 中获取 RESTful URLS?

c# - 没有加载的 AssemblyInfo