在try块中可以抛出异常吗?

在try块中可以抛出异常吗?,第1张

是可以的。\x0d\x0aJava的异常处理是通过5个关键字来实现的:try,catch,throw,throws,finally。\x0d\x0athrow和throws都是抛出异常的,但塔门有区别:\x0d\x0athrows关键字通常被应用在声明方法时,用来指定可能抛出的异常。多个异常可以使用逗号隔开。\x0d\x0athrow关键字通常用在方法体中,并且抛出一个异常对象。程序在执行到throw语句时立即停止,它后面的语句都不执行。通过throw抛出异常后,如果想在上一级代码中来捕获并处理异常,则需要在抛出异常的方法中使用throws关键字在方法声明中指明要跑出的异常;如果要捕捉throw抛出的异常,则必须使用try—catch语句。可见,throw可以主动抛出异常,也就是可以在try中抛出异常。

throw 用来抛出异常,可自己编写代码,抛出所需要的异常。

代码如下:

using System

using System.Collections.Generic

using System.Linq

using System.Text

namespace CheckedAndUnchecked

{

    class Program

    {

        static void Main(string[] args)

        {

            int month

            string b

            Console.WriteLine("请输入月份的值:")

            b = Console.ReadLine()

            month = int.Parse(b)

            switch (month)

            {

                case 1:

                    Console.WriteLine("January")

                    break

                case 2:

                    Console.WriteLine("Feburary")

                    break

                case 3:

                    Console.WriteLine("March")

                    break

                case 4:

                    Console.WriteLine("April")

                    break

                case 5:

                    Console.WriteLine("May")

                    break

                case 6:

                    Console.WriteLine("June")

                    break

                case 7:

                    Console.WriteLine("July")

                    break

                case 8:

                    Console.WriteLine("August")

                    break

                case 9:

                    Console.WriteLine("September")

                    break

                case 10:

                    Console.WriteLine("October")

                    break

                case 11:

                    Console.WriteLine("Novemer")

                    break

                case 12:

                    Console.WriteLine("December")

                    break

                default:

                    throw new ArgumentOutOfRangeException("不存在的月份") // throw

            }

        }

    }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8173218.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存