eclipse中如何去除警告:Class is a raw type. References to generic type Class should be parameterized


解決前的源代碼:

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());
...以下省略


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM