public class Main
/*
from n o w j a v a . c o m - 时代Java
*/
{
public static void main(String[] args)
{
try
{
method1();
}
catch (Exception exception) // catch exception thrown in method1
{
System.err.printf("%s%n%n", exception.getMessage());
exception.printStackTrace(); /**来 自 nowjava - 时代Java**/
// obtain the stack-trace information
StackTraceElement[] traceElements = exception.getStackTrace();
System.out.printf("%nStack trace from getStackTrace:%n");
System.out.println("Class\t\tFile\t\t\tLine\tMethod");
// loop through traceElements to get exception description
for (StackTraceElement element : traceElements)
{
System.out.printf("%s\t", element.getClassName());
System.out.printf("%s\t", element.getFileName());
System.out.printf("%s\t", element.getLineNumber());
System.out.printf("%s%n", element.getMethodName());
}
}
}
// call method2; throw exceptions back to main
public static void method1() throws Exception
{
method2();
}
// call method3; throw exceptions back to method1
/**代码未完, 请加载全部代码(NowJava.com).**/
本文介绍了一个Java程序中如何处理异常,并通过获取异常的堆栈跟踪信息来定位问题的具体位置。文中详细展示了如何使用getStackTrace方法获取异常发生的类名、文件名、行号及方法名。
245

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



