우리가 작업 중인 애플리케이션에서는 비즈니스 규칙 위반이 발생하면 상황을 처리하기 위해 사용자 지정 예외를 발생시킵니다. 사용자 지정 예외는 애플리케이션의 고유한 시나리오를 해결하기 위해 특별히 생성된 예외입니다. 사용자 지정 예외를 만들려면 C#의 ApplicationException 또는 Exception 클래스에서 새 클래스를 파생시킵니다. ApplicationException 클래스는 .NET v1.0 버전부터 .NET Framework에 포함되어 있으며 C#에서 사용자 지정 예외 클래스의 기본 클래스 역할을 하도록 설계되었습니다.
다음은 언급된 예입니다.
프로그램에서 사용자 정의 예외 사용을 보여주는 C# 프로그램
코드:
using System; //a namespace called user defined is defined namespace UserDefined { //a class called test weather is defined class Testweather { //main method is called static void Main(string[] args) { //an instance of the class temperat is defined Temperat tem = new Temperat(); try { //the show method of temperat class is called using the instance of the temperat class tem.show(); } catch(WeatheriscoldException e) { Console.WriteLine("The weather is cold Exception: {0}", e.Message); } Console.ReadKey(); } } } //a custom exception class called Weather is cold Exception class is created which is thrown if the weather is cold public class WeatheriscoldException: Exception { public WeatheriscoldException(string message): base(message) { } } //a class called temperat is defined public class Temperat { //a variable called temp is defined and assigned to zero int temp = 0; //a method called show is defined public void show() { //the temperature is checked to determine the weather if(temp == 0) { throw (new WeatheriscoldException("The temperature is found to be zero and hence the weather is cold")); } else { Console.WriteLine("The Temperature is: {0}", temp); } } }
출력:
설명:
프로그램에서 사용자 정의 예외 사용을 보여주는 C# 프로그램
코드:
using System; //a namespace called exception handling is defined namespace ExceptionHandling { //The custom exception class called odd num exception class is created by inheriting the exception class public class OddNumException : Exception { //The property message is being overridden here public override string Message { get { return "There cannot be an odd divisor"; } } } //a class called check is defined class check { //main method is called static void Main(string[] args) { //three integer variables are defined int a, b, c; Console.WriteLine("Please enter two numbers and type of the numbers must be integer:"); a = int.Parse(Console.ReadLine()); b = int.Parse(Console.ReadLine()); try { //checking if the divisor is an odd number or an even number if (b % 2 > 0) { //exception is thrown if the divisor is an odd number throw new OddNumException(); } c = a / b; Console.WriteLine(c); } catch (OddNumException two) { Console.WriteLine(two.Message); } Console.WriteLine("The program ends here"); Console.ReadKey(); } } }
출력:
설명:
다음은 언급된 장점입니다.
위 내용은 C#의 사용자 정의 예외의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!