|
error與exception的區(qū)別查閱網(wǎng)上資料大多是Java的解釋?zhuān)菜?a href=/itjie/phpjishu/ target=_blank class=infotextkey>php的異常處理過(guò)程與Java差不多
Java中的Object繼承結(jié)構(gòu)如下:
Object---->Throwable--------> Exception ----> RuntimeException | Error
Error都是unchecked類(lèi)型 Exception分為checked 與 unchecked類(lèi)型
且把異常與錯(cuò)誤都當(dāng)作程序運(yùn)行不正常的現(xiàn)象來(lái)看待
如果區(qū)分異常與錯(cuò)誤的話:
異常:非致命的。try{}catche(Exception e){} 執(zhí)行中的try模塊是測(cè)試運(yùn)行,代碼在運(yùn)行過(guò)程中出現(xiàn)錯(cuò)誤(非致命錯(cuò)誤)執(zhí)行catche
異常的作用類(lèi)似于下面的這些代碼:
if(mysql_connect('127.0.0.1','root','321321')){ echo '連接數(shù)據(jù)庫(kù)成功'; // other code...}else{ echo '連接數(shù)據(jù)庫(kù)錯(cuò)誤'; return false;}
使用異常處理的情況可以很輕松的處理異常情況。如下面的代碼可以一次性處理很多的異常情況
try{ mysql_connect('127.0.0.1','root','321321'); // other code you want to execute}catche(Exception $e){ print_r($e);}
錯(cuò)誤:致命的。一般都是程序語(yǔ)法錯(cuò)誤或者用戶(hù)級(jí)別的提示錯(cuò)誤
錯(cuò)誤與異常中都分為 checked與unchecked
checked 是可以讓用戶(hù)處理的,unchecked是不能被處理的
php中 Exception ,用戶(hù)級(jí)別的錯(cuò)誤可被用戶(hù)處理 (client code) 其他的錯(cuò)誤是不能被用戶(hù)處理的
此外,Java中還有個(gè) RuntimeException 是不能被用戶(hù)處理的。這個(gè)是運(yùn)行級(jí)別的異常
php技術(shù):php中error與exception的區(qū)別及應(yīng)用,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。