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

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

public class TestClass {
    public static void main(String[] args) {
       System.out.println("inside main");
       new Candy();
       System.out.println("After creating Candy");
       try {
           Class.forName("Gum");
       } catch (ClassNotFoundException e) {
           System.out.println("Couldn't find Gum");
       }
       System.out.println("After Class.forName(\"Gum\")");
    }
}
得到结果是:inside main
Loading Candy
After creating Candy
Couldn't find Gum
After Class.forName("Gum")为什么不能加载GUN类呢?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【fmwind】截止到2008-07-13 21:45:00的历史汇总数据(不包括此帖):
    发帖的总数量:5                        发帖的总分数:100                      每贴平均分数:20                       
    回帖的总数量:5                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:4                        结贴的总分数:80                       
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:1                        未结的总分数:20                       
    结贴的百分比:80.00 %               结分的百分比:80.00 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主加油
      

  2.   

    因为此程序被包管理的,所以Class.forName("包名.Gum")才会成功!
      

  3.   

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

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

    public class Test{ 
        public static void main(String[] args) { 
          System.out.println("inside main"); 
          new Candy(); 
          System.out.println("After creating Candy"); 
          try { 
              Class.forName("Gum"); 
          } catch (ClassNotFoundException e) { 
              System.out.println("Couldn't find Gum"); 
          } 
          System.out.println("After Class.forName(\"Gum\")"); 
        } 
    }运行结果:
    D:\Studio\JAVA\Test>javac Test.javaD:\Studio\JAVA\Test>java Test
    inside main
    Loading Candy
    After creating Candy
    Loading Gum
    After Class.forName("Gum")D:\Studio\JAVA\Test>pause
    请按任意键继续. . .没有问题啊
    是不是环境变量没有正确设置