在代码中
int x = 0;
int y = 1 / x;
Exception in thread "main" java.lang.ArithmeticException: / by zero
at sample.MyClass.main(MyClass.java:16)
我怎么能找到像这样的人
Exception in thread "main" java.lang.ArithmeticException: / by zero
at sample.MyClass.main(MyClass.java:16,12)[/code]
你不能。打印异常时,它包含StackTraceElement
这是对上述结果负责的方法
public StackTraceElement(String declaringClass, String methodName,
String fileName, int lineNumber) {
this.declaringClass = Objects.requireNonNull(declaringClass, "Declaring class is null");
this.methodName = Objects.requireNonNull(methodName, "Method name is null");
this.fileName = fileName;
this.lineNumber = lineNumber;
}
这里没有办法设置列编号。
StackTraceElement
也是final
类。你也不能扩展它和override
。
这是不可能的。如果您想获得更精确的行号,请使用额外的回车,如本例所示:
yourObject.
aMethod().
anotherMethod().
aLastMethod();