class program
{
static void main(string[] args)
{
calculator c = new calculator();
int r = 0;
try
{
r = c.add("abc","100");
}
catch(overflowException oe)
{
console.writeline(oe.message);
}
}
}
class Calculator
{
public int Add(string arg1 , string arg2)
{
int a = 0;
int b = 0;
try
{
a = int.parse(arg1);
b = int.parse(arg2);
}
catch(ArgumentNullException)
{console.writeling("your arguments are null");}
catch(FormatException)
{console.writeling("your arguments are not number");}
catch(OverFlowException oe)
{
//console.writeline("out of range");
throw oe;//只希望处理上面的两个异常,把overflow这个异常抛出去,意思是谁调用 这个add方法,谁去抓住这个异常进行处理
}
/*可以在catch后面的圆括号内加上标识符( catch(ArgumentNullException ane)),可以打印出具体错误消息。*/
/*try catch finally,当执行try语句的时候,无论是否发生异常,finally语句永远会执行,finally语句中一般会写两类内容,第一类数据库链接总能关闭,第二类写程序的log*/
}
}