引发类型为“System.Exception”的异常。什么意思???
输出明显比书上少了一半,
貌似switch中的case "simple"下的throw(new System.Exception());出现引发类型为“System.Exception”的异常。
这个怎么处理啊???
书上异常处理的实例。。。。新手 请轻拍 谢了。
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Ch07Ex02{ class Program { static string[] eTypes = { "none", "simple", "index", "nested index" }; static void Main(string[] args) { foreach (string eType in eTypes) { try { Console.WriteLine("Main() try block reached."); Console.WriteLine("ThrowException(\"{0}\")called.", eType); ThrowException(eType); Console.WriteLine("Main() try block continues."); } catch (System.IndexOutOfRangeException e) { Console.WriteLine("Main() Systrm.IndexOutOfRangeException catch" + "block reached.Message:\n\"{0}\"", e.Message); } finally { Console.WriteLine("Main() finally block reached."); } Console.WriteLine(); } Console.ReadKey(); } static void ThrowException(string exceptionType) { Console.WriteLine("ThrowException(\"{0}\") reached.", exceptionType); switch (exceptionType) { case "none": Console.WriteLine("Not throwing an exception."); break; case "simple": Console.WriteLine("Throwing System.Exception."); throw(new System.Exception()); break; case "index": Console.WriteLine("Throwing System.IndexOutOfRangeException."); eTypes[4]="error"; break; case "nested index": try { Console.WriteLine("ThrowException(\"nested index\")" + "try block reached."); Console.WriteLine("ThrowException(\"index\")called."); ThrowException("index"); } catch { Console.WriteLine("ThrowException(\"nested index\")general" + "catch block reached."); } finally { Console.WriteLine("ThrowException(\"nested index\")finally" + "block reached."); } break; } } }}