c# throw的用法
c#中throw到底是干什么用的,它是捕获异常,然后弹出异常对话框吗?像MessageBox.Show一样吗?它可以和try,catch连在一起使用吗?如下例:
if (e.ClickedItem == print)
{
i = 0;
try{
if (((Form2)ActiveMdiChild).txtMain.Text.Length < 1)
return;
this.printDocument1.Print();
}
catch (Exception err)
{
throw new Exception("打印发生错误"+err.Message);
//MessageBox.Show("打印发生错误",err.Message,MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
以上代码,编译可以通过,但是运行程序出现异常的时候,没有弹出异常对话框,而是程序崩溃了,出现错误是:示处理exception
打印发生错误未将对象引用设置到对象的实例.
是不是代码中的throw用法错了,不能这么用,那到底应该怎么用.
额,那怎么改?
人气:201 ℃ 时间:2020-03-24 16:00:36
解答
new Exception是用来人为的制造一个异常.而throw 是把这个异常抛出.这样我们就可以定义自己想要的异常信息了.但要注意的是,抛出了异常就一定要处理,不处理的话系统就崩了.你这里用得不合适.据个例子,异常抛出可以这...
推荐
猜你喜欢
- 英国南丁格尔家的反对南丁格尔当护士的事
- 有一本书在你的课桌里用英语怎么说
- 已知关于x y的方程组:3x+2y=m+1 2x+y=m-1 当m取何值时,该方程组的解中,x大于1,y不小于-1
- This afternoon,when I opened the door,I found our cat ________ in the corner with three
- 在黑板上写出三个自然数3,然后任意擦去其中一个,换成所剩两数之和.照这样进行100次后,黑板上留下的三个
- 他们是在装饰圣诞树吗英文
- 4篮桃子一共32千克,把这些桃子平均分给5个猴子,每只猴子能分到多少千克桃子?每
- 名人爱国故事 100字左右 求你们吧 明天要交啊