try catch为异常处理的一种模式。在try模块里如果 *** 作失败就会抛出异常代码,这时候catch模块就会捕捉这个异常,如果捕捉到,就会进行catch模块中的相应处理
try
{
//程序中抛出异常
throw value;
}
catch(valuetype v)
{
//例外处理程序段
}
语法小结:throw抛出值,catch接受,当然,throw必须在“try语句块”中才有效。
我们自己如何处理异常呢
A:trycatchfinally
B:throws 抛出
trycatchfinally的处理格式:
try {
可能出现问题的代码;
}catch(异常名 变量) {
针对问题的处理;
}finally {
释放资源;
}
变形格式:
try {
可能出现问题的代码;
}catch(异常名 变量) {
针对问题的处理;
}
注意:
A:try里面的代码越少越好
B:catch里面必须有内容,哪怕是给出一个简单的提示
/
在try里面发现问题后,jvm会帮我们生成一个异常对象,然后把这个对象抛出,和catch里面的类进行匹配。
如果该对象是某个类型的,就会执行该catch里面的处理信息。
异常中要了解的几个方法:
public String getMessage():异常的消息字符串
public String toString():返回异常的简单信息描述
此对象的类的 name(全路径名)
": "(冒号和一个空格)
调用此对象 getLocalizedMessage()方法的结果 (默认返回的是getMessage()的内容)
printStackTrace() 获取异常类名和异常信息,以及异常出现在程序中的位置。返回值void。把信息输出在控制台。
/
public class ExceptionDemo {
public static void main(String[] args) {
String s = "2014-11-20";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date d = sdfparse(s); // 创建了一个ParseException对象,然后抛出去,和catch里面进行匹配
Systemoutprintln(d);
} catch (ParseException e) { // ParseException e = new ParseException();
// ParseException
// eprintStackTrace();
// getMessage()
// Systemoutprintln(egetMessage());
// Unparseable date: "2014-11-20"
// toString()
// Systemoutprintln(etoString());
// javatextParseException: Unparseable date: "2014-11-20"
eprintStackTrace();
//跳转到某个指定的页面(indexhtml)
}
Systemoutprintln("over");
}
}
try,catch不能捕获promise里reject出来的错误信息。
相同点,都是获取代码错误信息的方法,而且2种都不能获取异步错误。
前后台接口交接的地方,因为那里前后台的参数有时候是未知的,使用try,catch正合适。
java中所有的异常都会继承Exception这个父类Java程序在执行过程中如果出现异常,会自动生成一个异常类对象,该异常对象将被自动提交给JVM,这个过程称为抛出(throw)异常。getMessage() 方法,用来获得有关异常事件的字符串信息。printStackTrace() 方法,用来跟踪异常事件发生时执行堆栈的内容。你可以用egetMessage()获取异常信息
这是由java的异常处理机制决定的,你得把可能出现异常的代码放到try语句中,只有放到了try语句中出现的异常才能被捕捉到,假如出现了异常,JVM就会构造一个异常对象传递给e,这样当然就能调用Exception中的方法了
以上就是关于CPP 的try、catch等关键字是什么意思全部的内容,包括:CPP 的try、catch等关键字是什么意思、java 主键异常怎么捕获、前端catch和try catch的区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)