这段代码效果很好,但如果我想在其他程序中使用它,我该怎么做?
是否可以像类库一样创建异常?如果是,怎么样?
namespace Exception_CreatingUserDefined
{
public class FirstOperandSmallException : Exception
{
public FirstOperandSmallException(String message) : base (message)
{
}
}
public class operation
{
int op1, op2;
public void operatn()
{
if(op1 < op2)
{
throw (new FirstOperandSmallException("First Operand Should not be Small"));
}
else {
//Do nothing
}
}
}
class Test
{
static void Main(string[] args)
{
operation opr = new operation();
try
{
opr.operatn();
}
catch(FirstOperandSmallException e)
{
Console.WriteLine("FirstOperandSmallException : {0}",e.Message);
}
Console.Read();
}
}
}
答案 0 :(得分:2)
正如Kenny所说,通过简单地包含你的命名空间,你就可以使用你在其中定义的任何公共类。为此,请执行以下操作:
此外,类库的常见做法是删除main
(入口)代码,因此它只有类和方法。
答案 1 :(得分:1)
我会问为什么你需要首先创建这样的Exception。您不能使用自定义例外添加任何其他属性。如果是我,我会抛出InvalidOperationException而不是创建自定义异常。
如果您需要获取进入Exception的其他数据,或者您需要专门捕获该异常的代码,我只会创建一个自定义异常。该框架有许多可以使用的内置异常,涵盖了一系列问题。