亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在不使用instanceof的情況下獲取異常是否為instanceof的復雜方法

在不使用instanceof的情況下獲取異常是否為instanceof的復雜方法

不負相思意 2023-07-13 14:05:34
我正在編寫一個方法,如果異常是 的實例,該方法將返回 true *someClass*。但我無法導入其中一個類,因為它位于另一個模塊中。我無法將該模塊添加到項目中,所以我想,我無法使用instanceof。我考慮創建一個Mapof Strings- 異常的類名并檢查我的異常的類名是否在映射中,但我認為這會相當慢且難看。方法如下:public boolean checkExceptionClass(Throwable cause){ return (cause instanceof firstException         || cause instanceof secondException         || cause instanceof iDontHaveThatClassException // can't do that         || cause instanceof fourthException);}也許我在我眼皮子底下看不到解決這個問題的好辦法。非常感謝任何想法和建議。
查看完整描述

1 回答

?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

您可以嘗試使用 .getClass() 和 getSimpleName(),例如:


Integer integer = Integer.valueOf(1);


if(integer.getClass().getSimpleName().equals("Integer") {

 return true

}

所以基本上你可以使用你無法導入的類的名稱,值得一提的是,硬編碼不是最佳實踐


查看完整回答
反對 回復 2023-07-13
  • 1 回答
  • 0 關注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號