標籤:ring ack strong name lin equals stat catch print
Exception e中e的getMessage()和toString()方法的區別:
範例程式碼1:
public classTestInfo {
privatestatic String str =null;
publicstatic void main(String[] args) {
System.out.println("testexception");
try{
if(str.equals("name")){
System.out.println("testexception");
}
}catch (Exception e) {
System.out.println(e.toString());
System.out.println(e.getMessage());
}
}
}
輸出結果:
; font-family:"microsoft="" background-color:="" />null
範例程式碼2:
public class TestInfo {
private static int m =0;
public static voidmain(String[] args) {
System.out.println("testexception");
try {
m = 899/0;
} catch (Exception e){
System.out.println(e.toString());
System.out.println(e.getMessage());
}
}
}
輸出結果:
java.lang.ArithmeticException: /by zero
/ by zero
總結:由此可以看出,e.toString()擷取的資訊包括異常類型和異常詳細訊息,而e.getMessage()只是擷取了異常的詳細訊息字串。
Java 異常的Exception e中的egetMessage()和toString()方法的區別