您的位置:首页 > 编程语言 > Java开发

关于Java中 Class.forName();

2015-09-12 12:50 549 查看
在学习Class类时遇到如下问题:

   下面那段代码一直报ClassNotFoundException异常

class Candy{
static{
System.out.println("Loading Candy");
}
}

class Gum{
static{
System.out.println("Loading Gum");
}
}

class Cookie{
static{
System.out.println("Loading Cookie");
}
}

public class SweetShop {
public static void main(String[] args) {
System.out.println("inside man");
new Candy();
System.out.println("After creating Candy");
try{
<span style="color:#ff0000;">Class.forName("Gum");</span>
} catch(ClassNotFoundException e){
System.out.println("Couldn't find Gum");
}
System.out.println("After Class.forName(\"Gum\")");
new Cookie();
System.out.println("After creating Cookie");
}
}

解决方法:
将Class.forName("Gum")改为Class.forName("swj.typeinfo.Gum")

总结:

在使用forName加载类时,需要 "包名.类名" ,如果是default包 则直接使用类名 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java Class类