সি# এ কাস্টম এক্সেপশন তৈরি করার জন্য, আপনি একটি নতুন ক্লাস তৈরি করবেন, যা Exception
ক্লাস থেকে ইনহেরিট করবে। কাস্টম এক্সেপশন ব্যবহার করে প্রোগ্রামে নির্দিষ্ট ধরনের ত্রুটি বা অবস্থার জন্য বিশেষ বার্তা ও লজিক যোগ করা যায়, যা সাধারণ এক্সেপশন দিয়ে বোঝানো কঠিন।
প্রথমে, একটি নতুন ক্লাস তৈরি করুন, যা Exception
ক্লাস থেকে ইনহেরিট করবে।
Exception
ক্লাসে থাকা কনস্ট্রাক্টরগুলো কাস্টম এক্সেপশন ক্লাসে ব্যবহার করতে পারেন, যাতে কাস্টম বার্তা বা ইনফরমেশন পাঠানো যায়।
নিচে একটি কাস্টম এক্সেপশন ক্লাসের উদাহরণ দেওয়া হলো যেখানে InvalidAgeException
নামের কাস্টম এক্সেপশন তৈরি করা হয়েছে।
using System;
public class InvalidAgeException : Exception
{
// ডিফল্ট কনস্ট্রাক্টর
public InvalidAgeException() : base("Invalid age. Age must be 18 or older.")
{
}
// কাস্টম বার্তার জন্য কনস্ট্রাক্টর
public InvalidAgeException(string message) : base(message)
{
}
// কনস্ট্রাক্টর যা মেসেজ ও ইননার এক্সেপশন নেয়
public InvalidAgeException(string message, Exception innerException) : base(message, innerException)
{
}
}
এই উদাহরণে InvalidAgeException
নামে একটি কাস্টম এক্সেপশন তৈরি করা হয়েছে, যা বয়স যাচাইয়ের সময় ব্যবহৃত হবে।
এখন কাস্টম এক্সেপশন ব্যবহার করার জন্য আমরা একটি মেথড তৈরি করব, যেখানে নির্দিষ্ট শর্ত অনুযায়ী এক্সেপশনটি ছোড়া হবে।
public class AgeValidator
{
public void ValidateAge(int age)
{
if (age < 18)
{
throw new InvalidAgeException("Age must be 18 or older to register.");
}
else
{
Console.WriteLine("Age is valid for registration.");
}
}
}
এখন আমরা try-catch
ব্লকের মাধ্যমে কাস্টম এক্সেপশন হ্যান্ডল করব।
public class Program
{
public static void Main()
{
AgeValidator validator = new AgeValidator();
try
{
validator.ValidateAge(15); // এখানে বয়স ১৫ দেওয়া হয়েছে, যা `InvalidAgeException` ছোড়ে।
}
catch (InvalidAgeException ex)
{
Console.WriteLine("Custom Exception Caught: " + ex.Message);
}
catch (Exception ex)
{
Console.WriteLine("An error occurred: " + ex.Message);
}
}
}
১. InvalidAgeException ক্লাস: এই ক্লাসটি Exception
ক্লাস থেকে ইনহেরিট করে, এবং আমরা এতে কাস্টম বার্তা প্রদান করার জন্য কয়েকটি কনস্ট্রাক্টর তৈরি করেছি। ২. ValidateAge মেথড: এখানে বয়স যাচাই করা হয়েছে, এবং যদি বয়স ১৮-এর কম হয়, তবে InvalidAgeException
ছোড়া হবে। ৩. try-catch ব্লক: InvalidAgeException
ক্যাচ করে এবং প্রোগ্রামটি ক্র্যাশ না করেই একটি বার্তা দেখায়।
কাস্টম এক্সেপশন তৈরি করার মাধ্যমে প্রোগ্রামে নির্দিষ্ট ধরনের ত্রুটি চিহ্নিত এবং হ্যান্ডল করা সহজ হয়। এটি ত্রুটি বার্তাকে আরও অর্থপূর্ণ করে এবং ডিবাগিং সহজতর করে।
আরও দেখুন...