class Value{
  int c=0;
  Value(){
    c=15;
  }
  Value(int i){
    c=i;
  }
  void inc(){
    c++;
  }
}
class Count{
  public static void prt(String s){
    System.out.println(s);
  }
    Value v=new Value(10);
    static Value v1,v2;
    static{
      prt("v1.c="+v1.c+"  v2.c="+v2.c);
      v1=new Value(27);
      prt("v1.c="+v1.c+"  v2.c="+v2.c);
      v2=new Value(15);
      prt("v1.c="+v1.c+"  v2.c="+v2.c);
    }   public static void main(String[] args){
    Count ct=new Count();
    prt("ct.c="+ct.v.c);
    prt("v1.c="+v1.c+"  v2.c="+v2.c);
    v1.inc();
    prt("v1.c="+v1.c+"  v2.c="+v2.c);
    prt("ct.c="+ct.v.c);
  }
}
为什么编译通过了执行却出错呢.提示:could not find the main class.program will exit.

解决方案 »

  1.   

    文件名是叫Count.java啊...好象不是public的原因啊,加上public之后还是一样的..
      

  2.   

    prt("v1.c="+v1.c+"  v2.c="+v2.c);
          v1=new Value(27);
          prt("v1.c="+v1.c+"  v2.c="+v2.c);
          v2=new Value(15);
    改成
    v1=new Value(27);
     v2=new Value(15);
    prt("v1.c="+v1.c+"  v2.c="+v2.c);
       prt("v1.c="+v1.c+"  v2.c="+v2.c);
      

  3.   

    但是跟我预期的结果就不一样了.我在Value类的int c=0;前加了个Static,就对了,可是会出来警告.