程序员并不一定要做消防员 你努力的工作,阅读了很多的技术手册和一些有趣的Head First 书,你已经达到了专业领域的象牙塔:程序员大师
但是你的程序还是会崩溃,或者其行为与预期不符
并不是让你戒掉愉悦的编程习惯去修复一些奇怪的bu g
但是有了异常处理,你可以写代码来处理出现的问题
更好的是,你可以对这些问题做出反应,而且保持程序运行
Brian 的借口要是可移动的 Brian 最近换到了国际部去工作
他现在整天坐飞机各处跑
但是他还是需要掌管着自己的借口,所以他把你写的程序装在了自己的笔记本上,走到哪儿带到哪儿
但是程序不能运行
Brian 点击了“Random Excuse”按钮,看到了一个很糟糕的错误
似乎是找不到他的借口,怎么回事
下面的代码有问题
这段代码会抛出五个异常,错误信息显示在右侧
你的任务就是把抛出异常的代码和异常匹配起来
读读异常消息,那有很好的提示作用
你的任务就是把出问题的代码和出的问题匹配起来
DividedByZero 异常并不一定要发生
你可以通过观察知道代码中有些地方有问题
其他的异常也是一样
这些异常都是可以避免的--对于异常了解的越多,就越能够避免程序崩溃
你的程序抛出一个异常的时候,
NET 就会生成一个Ex ception 对象 你已经看到
NET 是以何种方式告诉你程序中出错了的:一个异常
在 C#中,异常发生的时候,就会生成一个代表所发生问题的对象
毫无悬念,它叫做 Ex ception
比如,你有一个含有 4 个元素的数组
然后你试着去访问第十六个元素(位序是15,由于我们的数组是从 0 开始的)
NET 不辞劳苦的创建一个对象是因为它想要给你提供关于导致异常的全部信息
你可能会根据这些信息来修改错误,或者改变你处理程序中某个状况的方式
在我们的例子中,Index Ou tOfRangeEx ce