int i=1;
if(i<2) int b=1;
这个的结果是显示编译错误的,同时:
int i=1;
if(i<2){
int b;
}
是不会显示编译错误的,
第一个编译错误的原因是因为 int b=1;代表了两个语句分别是
int b;b=1;
我只是单纯觉得有趣而已................
我在想如果只有这一种赋值语句会发生编译错误,那么开发java语音的人为什么不直接把
他在底层改一下让编译器可以接受并且解析这个错误呢?这是我第一个想到的
第二个就是可能除了这个语句外还有其他语句会导致编译错误,那么这些语句又是哪一些呢?
有人可以解答吗? |
|