首页 > 其他 > 详细

定义一个异常类DivZero,假如除数为零,则显示“除数不能为0”的异常信息。

时间:2019-12-20 21:32:34      阅读:171      评论:0      收藏:0      [点我收藏+]

标题所示问题出自《C#从入门到精通-第二版》

第七章 异常处理与程序调试

实战练习操作题

百度相关内容发现一些PPT的题目有提及,但没有具体答案,因为基础较差,被这个简单的东西占用了一些时间

 

 public class DivZero : Exception   //定义一个异常类
    {
        public DivZero(string str) : base(str)  //继承基类的有参构造函数
        { }
    }
    class Program
    {
      
        static void Main(string[] args)
        {
            try
            {             
                int x = int.Parse(Console.ReadLine()); //输入除数X
                if (x == 0)                            //如果X为0,抛出异常,程序结束
                {
                    throw new DivZero("除数不能为0");
                }
                int y = 10;
                int z = x / y;
                Console.WriteLine("{0}/{1}={2}",x,y,z);
            }
            catch(Exception e)
            {               
                Console.WriteLine(e.Message);
            }           
            finally
            {
                Console.ReadKey();
            }
        }
    }

主要时间浪费在,输入X之后,没有立即抛出异常,而是习惯性的在“  int z = x / y;”之后再抛出异常

所以程序异常直接通过catch执行了,没有达到题目要求。

定义一个异常类DivZero,假如除数为零,则显示“除数不能为0”的异常信息。

原文:https://www.cnblogs.com/-young/p/12074953.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!