编译器明明可以确定为错误,为什么只报出警告或任何警告错误都不报出? 编译器 警告 错误 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、你这个说法有点小问题,methodA由于是static,所以永远只有一个,但是如果多个地方调用methodA,他们的运行环境确实是独立的不同的,也就是说有独立的栈内存,局部变量也当然是不同的,这个去看函数调用原理就知道了。2 3 4属于同一问题,这只是编译器设计上的问题,不同编译器表现可能不同,你完全可以自己写一个Java编译器检查所有明显错误的情况并报错不予以编译,或者你也可以写一个编译器完全不检查任何潜在错误。当前版本的官方编译器设计上认为编译器的本职工作只是编译,运行会不会出错和它无关,它在能编译通过的情况下尽量编译,除非是实在无法编译才会报告错误,如果它觉得这个代码可能有问题但可以编译通过,也只会警告,就算在你看来肯定会出错,编译器也是睁一只眼闭一只眼,这一方面是充分相信程序员,另一方面也是效率上的考虑,这类错误太多了,如果所有这些错误你都要去检查,并且做出适当处理,那开销太大,特别是大型项目编译,如果一个项目本来编译只需要一分钟,检查错误却要花上十分钟,那估计没有几个人会喜欢这个编译器,所以有些语言比如C/C++的某些编译器为了效率基本不会检查潜在错误。 追问:疑问 1 中的代码:public static void methodA() { // 行1 String s = null; // 行2 System.out.println(s.length());}疑问5:想尽一切的办法,是否有方法能够使在执行 “行2” 代码时,使 s 变量的值不为 null ?我想过多线程,但也认为无法做到,因为这是一个方法,是一个方法中的局部变量,每个线程执行此方法,都会是 “各自单独” 地去执行此方法。 泛型数组 【求助】关于java输入语句异常的处理 String问题 有关composition的问题,请求高手回答??? java mysql 问题<<<<<<<<<<<<<<<<<< 请问一个关于JMenuBar的问题~!!! 一个java的低级问题 java做成一个对话框,如何让它能在WEB上显示? 高分求解 oo思想编程??????????? SSH框架大家都用那个版本的呀? 求助!自定义RandomChar 类产生随机字母写入文件产生乱码。
当前版本的官方编译器设计上认为编译器的本职工作只是编译,运行会不会出错和它无关,它在能编译通过的情况下尽量编译,除非是实在无法编译才会报告错误,如果它觉得这个代码可能有问题但可以编译通过,也只会警告,就算在你看来肯定会出错,编译器也是睁一只眼闭一只眼,这一方面是充分相信程序员,另一方面也是效率上的考虑,这类错误太多了,如果所有这些错误你都要去检查,并且做出适当处理,那开销太大,特别是大型项目编译,如果一个项目本来编译只需要一分钟,检查错误却要花上十分钟,那估计没有几个人会喜欢这个编译器,所以有些语言比如C/C++的某些编译器为了效率基本不会检查潜在错误。
// 行1
String s = null; // 行2
System.out.println(s.length());
}
疑问5:想尽一切的办法,是否有方法能够使在执行 “行2” 代码时,使 s 变量的值不为 null ?我想过多线程,但也认为无法做到,因为这是一个方法,是一个方法中的局部变量,每个线程执行此方法,都会是 “各自单独” 地去执行此方法。