dead code无作用的代码
if (true & true) {
System.out.println("execute ok");
} else {
System.out.println("execute fail");
}
从else开始即为无作用。因为true&true在编绎时即知结果,所以else部分是无用的,编译器知道肯定不会执行的代码。
boolean a = true;
boolean b = true;
if (a & b) {
System.out.println("execute ok");
} else {
System.out.println("execute fail");
}
不会出现该问题,因为在编译时编译器不确定a & b是否恒成立。
原贴地址:http://blog.youkuaiyun.com/woshixuye/article/details/17053597
本文通过两个具体的Java示例,探讨了什么是死代码及其如何被识别。特别关注了当条件表达式的值在编译时即可确定的情况下,如何判断某些代码块是否会被执行。此外,还讨论了编译器如何处理这类问题。
981

被折叠的 条评论
为什么被折叠?



