※以下內容皆是新手撰寫,內容可能不完全正確
30天的可愛顏文字挑戰用這篇畫下(有點慘烈的)句點~
程式寫越多就會碰上越多error,但也不必荒(跟自己講的),除掉就好ㄌ :D
最後一個主題是 異常處置(exception handling) ,為C#程式語言搬出四種關鍵字,在使用者同意的狀況下替使用者處理預料之外或其他異常的狀況(不一定成功),例如把零當分母用。可以想成異常會觸動什麼,把控制權從程式的A區塊遞給B區塊。
以下是異常處置的四個關鍵字:
catch(Exception yee) {
//一些程式碼
throw yee
}
接著是使用這些關鍵字的語法,有種寫八股文的感覺(???):
try {
//造成異常的敘述
} catch(異常名稱 a){
//負責處置異常的程式碼
} catch(異常名稱 b){
//負責處置異常的程式碼
} finally {
//需要執行的敘述
}
C#中的異常類別(exception classes)
異常用類別表示,而這些類別皆從System.Exception衍生而來。
System.ApplicationException:支援應用程式異常(使用者自己定義異常要從這個類別衍生)
System.SystemException:為所有預設系統異常(predefined system exceptions)之類基
個人認為C#處置異常這方面架構很好理解,甚至比之前提到程式碼中的各個部份好懂,程式碼原本的敘述跟處理錯誤的敘述是分開的。
使用者也可以自己定義異常:
public class SomeRandomException : Exception {
public SomeRandomException(string message): base (message)
}
}
寫了一個月的的C#短篇筆記(別名:可愛顏文字挑戰),覺得超級無敵累,累炸了,但真的只有逼迫自己努力不懈、狠下心不間斷的學習某個東西,才能有初步的了解。即使目前只了解到C#程式語言的皮毛,仍舊覺得能一併龐大的課業量完成這30天實在不容易。現在反而很期待外國網站上某些C#的進階教學到底會教些什麼,畢竟進階教學教的東西有些又更實用了。後會有期。
by腐爛的阿雪
參考資料:
(a) Tutorialspoint; C# - Exception Handling
https://www.tutorialspoint.com/csharp/csharp_exception_handling.htm
(b) Microsoft; Exceptions and Exception Handling (C# Programming Guide)
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/exceptions/