Pengecualian Tersuai dalam C#

王林
Lepaskan: 2024-09-03 15:21:32
asal
983 orang telah melayarinya

Dalam aplikasi yang sedang kami usahakan, apabila pelanggaran peraturan perniagaan berlaku, kami menimbulkan pengecualian tersuai untuk menangani situasi tersebut. Pengecualian tersuai ialah pengecualian yang dibuat khusus untuk menangani senario unik dalam aplikasi kami. Untuk mencipta pengecualian tersuai, kami memperoleh kelas baharu daripada kelas ApplicationException atau Exception dalam C#. Kelas ApplicationException disertakan dalam Rangka Kerja .NET bermula dari versi .NET v1.0 dan direka bentuk untuk berfungsi sebagai kelas asas untuk kelas pengecualian tersuai dalam C#.

Menggunakan Pengecualian Tersuai dalam C#

  • Pengecualian mengendalikan jenis ralat yang berlaku semasa pelaksanaan aplikasi. Dengan ralat, kami maksudkan masalah yang tidak dijangka yang timbul semasa pelaksanaan aplikasi. Sebaliknya, pengecualian dijangka berlaku semasa pelaksanaan permohonan atas beberapa sebab.
  • Pengendalian pengecualian digunakan oleh aplikasi untuk mengendalikan pengecualian yang dijangka berlaku semasa pelaksanaan aplikasi. Pengendalian pengecualian dalam C# dilakukan menggunakan dua kata kunci cuba, tangkap, akhirnya dan buang.
  • Kelas mewakili pengecualian dalam C#. Kelas pengecualian dalam C# ini diperoleh daripada System. Kelas pengecualian sama ada secara langsung atau secara tidak langsung.
  • Kelas Pengecualian Aplikasi atau kelas Pengecualian digunakan untuk mencipta pengecualian tersuai yang boleh dilemparkan.
  • Penciptaan pengecualian tersuai hanya berguna jika pengecualian ini boleh ditangkap dan boleh dikendalikan dengan cara yang berbeza.
  • Ralat berlaku untuk aplikasi, dan log ralat boleh dipantau menggunakan alat pemantauan ralat jika kami mencipta Pengecualian Tersuai dalam C#.

Contoh

Diberikan di bawah adalah contoh yang dinyatakan:

Contoh #1

Atur cara C# untuk menunjukkan penggunaan Pengecualian Tersuai dalam atur cara.

Kod:

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);
}
}
}
Salin selepas log masuk

Output:

Pengecualian Tersuai dalam C#

Penjelasan:

  • Dalam program di atas, ruang nama yang dipanggil takrif pengguna ditakrifkan. Kemudian kelas yang dipanggil cuaca ujian ditakrifkan. Kemudian kaedah utama dipanggil. Kemudian contoh temperat kelas ditakrifkan. Kemudian kaedah tunjukkan kelas temperat dipanggil menggunakan contoh kelas temperat.
  • Kemudian kelas pengecualian tersuai dipanggil Kelas Pengecualian cuaca sejuk dicipta, yang dilemparkan jika cuaca sejuk. Kemudian kelas yang dipanggil temperat ditakrifkan. Kemudian pembolehubah yang dipanggil temp ditakrifkan dan diberikan kepada sifar. Kemudian kaedah yang dipanggil pertunjukan ditakrifkan. Kemudian suhu diperiksa untuk menentukan cuaca.

Contoh #2

Atur cara C# untuk menunjukkan penggunaan Pengecualian tersuai dalam atur cara.

Kod:

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();
}
}
}
Salin selepas log masuk

Output:

Pengecualian Tersuai dalam C#

Penjelasan:

  • Dalam program di atas, ruang nama yang dipanggil pengendalian pengecualian ditakrifkan. Kemudian kelas ini dipanggil kelas pengecualian bilangan ganjil, dicipta dengan mewarisi kelas pengecualian. Kemudian mesej harta ditimpa di sana. Kemudian kelas yang dipanggil cek ditakrifkan. Kemudian kaedah utama dipanggil. Kemudian tiga pembolehubah integer ditakrifkan untuk mengambil dua pembolehubah integer input dan pembolehubah integer yang lain digunakan untuk menyimpan output integer.
  • Kemudian dua pembolehubah integer dihuraikan menggunakan kaedah parse(). Kemudian pembolehubah integer kedua atau pembahagi diperiksa untuk melihat sama ada ia adalah nombor ganjil atau nombor genap, dan ini dilakukan dengan menyemak sama ada baki pembahagian pembahagi dengan dua adalah lebih daripada sifar atau sama dengan sifar. Kemudian pengecualian dilemparkan jika pembahagi ialah nombor ganjil.

Kelebihan

Diberikan di bawah adalah kelebihan yang dinyatakan:

  • Pengendalian tersuai jenis pengecualian tersuai dalam C# boleh dilakukan dengan memanggil kod.
  • Pemantauan sekitar jenis pengecualian tersuai boleh dibuat tersuai dengan menggunakan pengendalian pengecualian tersuai dalam C#.

Atas ialah kandungan terperinci Pengecualian Tersuai dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!