如下:
class B
{
void printB()
{
}
}
class A
{      
        //{
        B b=new B();
        b.printB();
       //}   
}
去掉注释,就能编译通过,我实在想不明白,谁知道原因啊.

解决方案 »

  1.   

    b.printB(); 这样的语句只能在方法中调用吧   不知道加个注释是不是匿名方法
      

  2.   

    去掉注释相当于一段不属于方法的代码
    所以可以编译,但不能运行通过因为没有main方法
    加上注释要去掉 b.printB();因为这在方法中调用
      

  3.   

    class A
    {      
            static{
            B b=new B();
            b.printB();
           }   
    }这样也是可以的,类A第一次载入时即执行static块.
      

  4.   

    这样的代码有点奇怪,但是不明白,用eclipse一些IDE这样
    写一下,就像LZ所说的,去掉不报错。