代码
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]
答案 0 :(得分:2)
你做不到。当您打印例外时,它包含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
。
答案 1 :(得分:0)
不可能。如果您想获得更精确的行号,请使用额外的回车符,如下例所示:
yourObject.
aMethod().
anotherMethod().
aLastMethod();