异常处理初学者 C# 中

本文关键字:初学者 异常处理 | 更新日期: 2023-09-27 18:34:37

我正在尝试自己学习C#。在下面的代码中,我只想仅在未找到异常时才执行 main 方法有可能????

谁能帮我

法典

public abstract class AbsClass
    {
        // Abstract Method
        public abstract int DivTwoNumbers(int a, int b);
    }
    class Program : AbsClass
    {
        public int result { get; set; }
        public override int DivTwoNumbers(int a, int b)
        {
            try
            {
                result = a / b;
            }
            catch (DivideByZeroException e)
            {
                Console.WriteLine("Second Number was " + e.Message);
            }
            return result;
        }
        static void Main(string[] args)
        {
            AbsClass prog = new Program();
            int div = prog.DivTwoNumbers(10, 0);
            Console.WriteLine("Division Of Number Is : {0} ", div);
        }
    }

异常处理初学者 C# 中

> If I understand you right, you don't want to print number if division is incorrect - 从我的评论到可能的答案。

public override int DivTwoNumbers(int a, int b)
{
    return a / b;
}

static void Main(string[] args)
{
    AbsClass prog = new Program();
    try
    {
        int div = prog.DivTwoNumbers(10, 0);
        Console.WriteLine("Division Of Number Is : {0} ", div);
    }
    catch (DivideByZeroException e)
    {
        Console.WriteLine("DivideByZeroException. Second Number was " + e.Message);
    }
    catch(Exception ex)
    {
        Console.WriteLine("ErrorMessage :" + ex); // will also print exception details (edit by `KCdod`)
    }
}
Main 方法

始终是第一个要执行的,您必须在 Main 方法中调用 DivTwoNumbers:

static void Main(string[] args)
{
    try
    {
        DivTwoNumbers(10, 0);
        //continue ...
    }
    catch(Exception ex)
    {
        //break...
    }
}