packagecom.erick;publicclassDemo05{publicstaticvoidmain(String[] args){try{int num =1/0;}catch(Exception e){System.out.println(e.getClass());// class java.lang.ArithmeticExceptionSystem.out.println(e.getClass().getName());//java.lang.ArithmeticExceptionSystem.out.println(e.getClass().getSimpleName());//ArithmeticExceptionSystem.out.println(e.getMessage());// by zeroSystem.out.println(e.getCause());// null}}}
栈轨迹
packagecom.erick;publicclassDemo05{publicstaticvoidmain(String[] args){try{second();}catch(Exception e){// com.erick.Demo05.first(Demo05.java:20)// com.erick.Demo05.second(Demo05.java:16)// com.erick.Demo05.main(Demo05.java:6)/*获取到栈调用的轨迹*/StackTraceElement[] stackTrace = e.getStackTrace();for(StackTraceElement element : stackTrace){System.out.println(element);}/*java.lang.ArithmeticException: / by zero
at com.erick.Demo05.first(Demo05.java:26)
at com.erick.Demo05.second(Demo05.java:22)
at com.erick.Demo05.main(Demo05.java:6)*/// 栈调用的轨迹,异常逻辑
e.printStackTrace();}}privatestaticvoidsecond(){first();}privatestaticvoidfirst(){int num =1/0;}}