我有一个简单的方法来检查输入字符串是否有效xpath
private boolean isXpath(String value) {
boolean isXpath = true;
try {
XPath xpath = XPathFactory.newInstance().newXPath();
xpath.compile(value);
} catch (XPathExpressionException e) {
isXpath = false;
}
return isXpath;
}
我可以确定JIT编译器不会删除try
块内的代码,因为它没有副作用吗?或者它有(可能的例外)?
答案 0 :(得分:5)
死码Eliminatino不只是关于副作用,而且关于使用计算结果。由于您的方法返回cm.Accent
,而在不执行isXpath
块的情况下无法导出,因此JIT编译器无法将其消除。