Java異常中toString()和getMessage()區(qū)別
在java異常體系中,要打印異常信息,可以通過:e.getMessage() 、 e.toString() e.printStackTrace() 等方法打印出 一些 異常信息。已知的是這些方法都可以打印異常信息,但是這些方法打印的異常信息 都不相同,那么問題來啦: 這些方法打印異常信息的區(qū)別是?日常開發(fā)工作中,該用哪個方法打印異常信息呢?
首先寫了兩個錯誤
@Controller
public class DemoController {
@RequestMapping("/show1")
public String showInfo(){
String str = null;
str.length();
return "index";
}
@RequestMapping("/show2")
public String showInfo2(){
int a = 10/0;
return "index";
}
}第一個是空指針異常
使用toString()方法打印報錯信息
@ControllerAdvice
public class AjaxGlobalException {
@ResponseBody
@ExceptionHandler
public Map<String,Object> errorHandler(Exception e){
Map<String, Object> hashMap = new HashMap<>();
hashMap.put("status",500);
hashMap.put("msg",e.toString());
return hashMap;
}空指針異常的錯誤信息是;

如果使用 getMessage()報錯信息是null:

所以?。。。。。。。。?!輸出異常要使用toString()
因為toString方法獲取的是異常類型和異常詳細信息
getMessage()只獲取異常的詳細信息字符串
到此這篇關(guān)于Java異常中toString()和getMessage()區(qū)別的文章就介紹到這了,更多相關(guān)Java toString() getMessage() 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java Runtime類詳解_動力節(jié)點Java學院整理
Runtime類封裝了運行時的環(huán)境。每個 Java 應(yīng)用程序都有一個 Runtime 類實例,使應(yīng)用程序能夠與其運行的環(huán)境相連接。下面通過本文給大家分享Java Runtime類詳解,需要的朋友參考下吧2017-04-04
使用Spring?Cloud?Stream處理事件的示例詳解
Spring?Cloud?Stream?是基于?Spring?Boot?的用于構(gòu)建消息驅(qū)動微服務(wù)的框架,本文主要介紹了如何使用?Spring?Cloud?Stream?來處理事件,需要的可以參考一下2023-06-06
Java線程隊列LinkedBlockingQueue的使用
本文主要介紹了Java線程隊列LinkedBlockingQueue的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-06-06
SpringBoot用實體接收Get請求傳遞過來的多個參數(shù)的兩種方式
本文主要介紹SpringBoot用實體接收Get請求傳遞過來的多個參數(shù),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04

