这段代码为什么不能通过?
如下:
class B
{
void printB()
{
}
}
class A
{
//{
B b=new B();
b.printB();
//}
}
去掉注释,就能编译通过,我实在想不明白,谁知道原因啊.
------解决方案--------------------b.printB(); 这样的语句只能在方法中调用吧 不知道加个注释是不是匿名方法
------解决方案--------------------去掉注释相当于一段不属于方法的代码
所以可以编译,但不能运行通过因为没有main方法
加上注释要去掉 b.printB();因为这在方法中调用
------解决方案--------------------只能在方法中调用
------解决方案--------------------class A
{
static{
B b=new B();
b.printB();
}
}
这样也是可以的,类A第一次载入时即执行static块.