本文目录一览:
在写java代码的时候什么时候才需要异常捕获?
肯定是在你需要对异常进行处理的时候啊
举个最常用的例子,线程的异常捕获
基本上用线程大部分都会 进行异常捕获
比如在线程睡眠的时候使用下面这条语句抛出异常
Thread.currentThread().interrupt();
这时候如果直接print的话,就会打印IllegalThreadStateException异常
这时候如果你不想 打印这个异常,想写个别的,比如打印一个 HelloWord
在 catc语句块中写print("HelloWord")就行了
java中具体怎样捕获异常?
比如在dao层类中写了一个可能会执行失败的方法:\x0d\x0a捕获异常的代码如下: \x0d\x0apublic Map remove(int id) { \x0d\x0a Map map = new HashMap(); \x0d\x0a try { \x0d\x0a userGroupDao.remove(id); \x0d\x0a map.put("isSuccess", true); \x0d\x0a } catch (Exception e) { \x0d\x0a map.put("isSuccess", false); \x0d\x0a map.put("errorMsg", e.getMessage()); \x0d\x0a } \x0d\x0a return map; \x0d\x0a}
java异常的捕获
首先自定义一个异常类
public class ActionException extends Exception{
public String returnMessage;
public ActionException(String returnMessage){
this.returnMessage = returnMessage;
}
public String getReturnMessage(){
return this.returnMessage;
}
代码中如果用到这个自定义的异常类,这里的代码只是做了个演示
private void validate(int a,int b)throws ActionException{
if(ab){
throw new ActionException("a b");
}
if(ab){
throw new ActionException("a b");
}
}
业务逻辑代码中
public String process(){
try{
validate(a,b);
}catch(ActionException ae){
System.out.println(ae.getReturnMessage());
}
}