如果区分异常与错误的话:
异常:非致命的。try{}catche(Exception e){} 执行中的try模块是测试运行,代码在运行过程中出现错误(非致命错误)执行catche
异常的作用类似于下面的这些代码:
if(mysql_connect('127.0.0.1','root','321321')) { echo '连接数据库成功'; // other code... } else { echo '连接数据库错误'; return false; }
使用异常处理的情况可以很轻松的处理异常情况。如下面的代码可以一次性处理很多的异常情况
try { mysql_connect('127.0.0.1','root','321321'); // other code you want to execute }catche(Exception $e){ print_r($e); }
错误:致命的。一般都是程序语法错误或者用户级别的提示错误
错误与异常中都分为 checked与unchecked
checked 是可以让用户处理的,unchecked是不能被处理的
php中 Exception ,用户级别的错误可被用户处理 (client code) 其他的错误是不能被用户处理的
此外,java中还有个 RuntimeException 是不能被用户处理的。这个是运行级别的异常