斷言
條件不滿(mǎn)足, 會(huì)使程序中斷,在debug時(shí)有效,release版本失效。
//assert(1>0)
//assert(1<0, "1 is not bigger than 0")
//assertionFailure("wrong")預(yù)置條件
同斷言,預(yù)置條件 不滿(mǎn)足 會(huì)使程序中斷 release版本依然有效
//precondition(1>0)
//precondition(1>0, "wrong")
//preconditionFailure(<#T##message: String##String#>)容錯(cuò)性
直接崩潰肯定是不好的,可以嘗試去處理錯(cuò)誤
//try? 嘗試執(zhí)行某個(gè)方法,失敗會(huì)返回nil 使用時(shí)可以解包使用 無(wú)法去處理具體的原因
//try! 嘗試執(zhí)行某個(gè)方法,失敗會(huì)崩潰
4.對(duì)會(huì)拋出異常的錯(cuò)誤針對(duì)性處理,可以使用異常捕獲機(jī)制
//要處理具體的原因,使用 do catch 對(duì)于會(huì)throw出異常的一般用這個(gè),一般在所有的catch之后,會(huì)默認(rèn)catch一個(gè)未知的錯(cuò)誤,這也是蘋(píng)果推薦的,因?yàn)槌讼氲降腻e(cuò)誤之外,可能有想不到的錯(cuò)誤
//do {
// try <#throwing expression#>
//} catch <#pattern#> {
// <#statements#>
//}