zoukankan      html  css  js  c++  java
  • C#异常机制

    |   版权声明:本文为博主原创文章,未经博主允许不得转载。

    1.  异常处理模板

     1 Try{
     2 
     3          有可能出现的错误代码;
     5       ......
     6 }
     7 
     8 catch{
     9 
    10          如果try中的代码出现异常,则进入catch中;
    12       ......
    13 }

    2. try-catch执行过程:

      首先,如果try中的代码没有出错,则程序正常运行try中的内容后,不会执行catch中的内容。但是如果try中的代码一旦出错,程序立即跳入

    catch中去执行代码,则try中的出错代码的后面的代码将不会在继续执行。

    3. 源码示例

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading.Tasks;
     6 
     7 namespace Test6_TryCatch的使用
     8 {
     9     /// <summary>
    10     /// 让学生输入其姓名,语文、数学、英语成绩,编程求其总分和平均分:并在屏幕上显示;××你的总分为
    11     /// ××分,平均分为××分。突出异常机制的处理
    12     /// </summary>
    13     class Program
    14     {
    15         static void Main(string[] args)
    16         {
    17             string name;
    18             int chnises, math, english;
    19             double totalScore, averageScore;
    20 
    21             try
    22             {
    23                 Console.WriteLine("请输入你的姓名:");
    24                 name = Console.ReadLine();
    25 
    26                 Console.WriteLine("请输入语文成绩: ");
    27                 chnises = Convert.ToInt32(Console.ReadLine());
    28 
    29                 Console.WriteLine("请输入数学成绩: ");
    30                 math = Convert.ToInt32(Console.ReadLine());
    31 
    32                 Console.WriteLine("请输入英语成绩: ");
    33                 english = Convert.ToInt32(Console.ReadLine());
    34 
    35                 totalScore = chnises + math + english;
    36                 averageScore = totalScore / 3.0;
    37 
    38                 Console.WriteLine("{0}你的总分为{1}分,平均分为{2}分", name, totalScore, averageScore);
    39                 Console.ReadKey();
    40             }
    41             catch
    42             {
    43                 Console.WriteLine("你输入的数据有误,请重新运行程序!");
    44                 Console.ReadKey();
    45             }
    46         } 
    47     }
    48 }

    运行截图:

               

                

    注:

    >>.try...catch...finally语句:

      try...catch...finally语句用法相当地灵活。

     1 try{
     2       //程序代码
     3 }
     4 //e是异常处理类Exception的实例对象,通过该类可以获取异常的详细信息。
     5 catch(Exception e)
     6 {
     7      //错误代码处理
     8 }
     9 finally{
    10      //程序代码
    11 }

      注意:每个try块后至少必须紧接一个catch块或finally语句块。无乱try块是否引发异常,相应的finally语句块都会被执行。事实上,即使在try

    语句块中出现了break、continue、return语句,finally语句块也会被执行。

    >>.throw语句

      throw语句用于将程序代码中的异常抛出,并让调用这个方法的程序进行捕捉和处理,这样就减少了将异常立即输出并显示的麻烦。

  • 相关阅读:
    Docker 私有仓库搭建
    事务提交与不同数据库的自增方式
    多环境切换&&注解方式&&增删改返回值问题
    查询缓存&&逆向工程
    Mybatis整合Log4j、延迟加载
    关联查询
    MyBatis实现动态SQL
    输出参数resultType
    MyBatis调用存储过程执行CRUD
    两种取值符号的异同
  • 原文地址:https://www.cnblogs.com/geore/p/5792461.html
Copyright © 2011-2022 走看看