eclipse中如何去除警告:Class is a raw type. References to generic type Class<T> sh

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:36   1190   0

转自:https://blog.csdn.net/zwr_1022/article/details/78583872

解决前的源代码:

public class test {
public static void main(String args[]) {//入口
try {

//假设在同一个包中建的一个javaBean: person
Class c = Class.forName("person");//警告出现在这里
try {
person factory = (person) c.newInstance();
factory.setName("asdf");
System.out.println(factory.getName());
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

------------------------------

  • 解决方法1:增加编译注解@SuppressWarnings("unchecked")

public class test {
@SuppressWarnings("unchecked")//增加在这里
public static void main(String args[]) {
try {
Class c = Class.forName("person");//警告出现在这里
try {
person factory = (person) c.newInstance();
factory.setName("asdf");
...以下省略

------------------------------

  • 解决方法2:使用泛型通配符

public class test {
public static void main(String args[]) {//入口
try {
Class<?> c = Class.forName("person");//这里使用泛型通配符
try {
person factory = (person) c.newInstance();
factory.setName("asdf");
System.out.println(factory.getName());
...以下省略

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP