3
我們正在運行時得到NoSuchMethodError。我只想知道我們是否得到這個錯誤,因爲在服務器的類路徑中沒有找到父類,或者找到類但已過時。來自第三方父級的NoSuchMethodError
我問這個問題的原因是,JRE在ExpressionEvaluator的實例化過程中檢查JEP類的存在,還是隻在調用一個方法時才檢查,而該方法又調用超類方法?
import org.nfunk.jep.JEP;
/** TODO Explain this class */
public class ExpressionEvaluator extends JEP {
public ExpressionEvaluator() {
}
...
...
客戶機代碼
public static boolean checkExpressionValidity(String ruleExpression) {
ExpressionEvaluator evaluator = new ExpressionEvaluator(); // instantiation
if (!(ruleExpression.contains(">") || ruleExpression.contains("<")
|| ruleExpression.contains("==") || ruleExpression.contains("!="))) {
return false;
}
String ruleExpressionForValidation = ruleExpression.replaceAll(
REGEX_FUNCTION_FINDER, "1");
evaluator.parseExpression(ruleExpressionForValidation); // super class method.
@aleroot不,這不是,看[這裏](http://java.sun.com/docs/books/jls/ third_edition/html/classes.html#8.8.7) – soulcheck
@aleroot如果您的類正在擴展另一個類,並且在這兩個類中都有一個無參數構造方法,那就是自動調用! – r0ast3d