Java Technologies Custom Exception Example: Custom Exception তৈরি এবং ব্যবহার গাইড ও নোট

353

Java Custom Exception হল একটি কাস্টম এক্সেপশন ক্লাস তৈরি করা, যা Java এর বিল্ট-ইন এক্সেপশন ক্লাস থেকে এক্সটেন্ড করা হয় এবং সিস্টেমের নির্দিষ্ট ত্রুটি (error) বা পরিস্থিতি (condition) হ্যান্ডল করতে ব্যবহৃত হয়। কাস্টম এক্সেপশন তৈরি করা হয় যখন Java এর ডিফল্ট এক্সেপশন ক্লাসগুলি যথেষ্ট উপযুক্ত নয় বা আপনার প্রজেক্টে বিশেষ ত্রুটি পরিচালনার প্রয়োজন হয়।

Custom Exception তৈরি এবং ব্যবহার করার জন্য পদ্ধতি:

  1. Custom Exception ক্লাস তৈরি:
    • Java তে কাস্টম এক্সেপশন ক্লাস তৈরি করতে, Exception বা RuntimeException ক্লাস থেকে একটি নতুন ক্লাস তৈরি করতে হয়।
    • সাধারণত extends Exception (যদি checked exception তৈরি করতে চান) অথবা extends RuntimeException (যদি unchecked exception তৈরি করতে চান) ব্যবহার করা হয়।
  2. Custom Exception ব্যবহার:
    • কাস্টম এক্সেপশন ক্লাস তৈরি করার পরে, তা সাধারণ Java কোডে থ্রো (throw) এবং ক্যাচ (catch) করা যেতে পারে।

Custom Exception Example:

Step 1: Custom Exception ক্লাস তৈরি করা

// Custom Exception class: InvalidAgeException
public class InvalidAgeException extends Exception {

    // Constructor that accepts a message
    public InvalidAgeException(String message) {
        super(message); // Calling parent constructor to pass the message
    }
}

এখানে, InvalidAgeException একটি কাস্টম এক্সেপশন ক্লাস, যা Exception ক্লাস থেকে এক্সটেন্ড করা হয়েছে। এই ক্লাসে একটি কনস্ট্রাক্টর রয়েছে যা একটি ত্রুটির বার্তা গ্রহণ করে।

Step 2: Custom Exception ব্যবহার করা

// Main class where custom exception will be used
public class CustomExceptionExample {

    // Method that checks age and throws custom exception if age is invalid
    public static void validateAge(int age) throws InvalidAgeException {
        if (age < 18) {
            // Throwing custom exception with a message
            throw new InvalidAgeException("Age must be 18 or older to register.");
        } else {
            System.out.println("Age is valid. Registration successful!");
        }
    }

    public static void main(String[] args) {
        try {
            validateAge(15); // Testing with an invalid age
        } catch (InvalidAgeException e) {
            // Catching and handling custom exception
            System.out.println("Caught exception: " + e.getMessage());
        }

        try {
            validateAge(20); // Testing with a valid age
        } catch (InvalidAgeException e) {
            System.out.println("Caught exception: " + e.getMessage());
        }
    }
}

Code Explanation:

  1. Custom Exception (InvalidAgeException):
    • আমরা একটি কাস্টম এক্সেপশন InvalidAgeException তৈরি করেছি যা Exception ক্লাস থেকে এক্সটেন্ড করা হয়েছে।
    • কনস্ট্রাক্টরটি একটি ত্রুটির বার্তা গ্রহণ করে এবং super(message) এর মাধ্যমে প্যারেন্ট ক্লাসে পাঠায়।
  2. validateAge Method:
    • validateAge মেথডটি একটি ইনপুট age নিয়ে, এবং যদি বয়স ১৮ এর নিচে হয় তবে কাস্টম এক্সেপশন থ্রো করে।
    • যদি বয়স বৈধ হয়, তবে একটি সাফল্য বার্তা প্রিন্ট করা হয়।
  3. Main Method:
    • main মেথডে validateAge মেথডটি দুইবার কল করা হয়েছে — একবার অবৈধ বয়স (১৫) দিয়ে এবং একবার বৈধ বয়স (২০) দিয়ে।
    • InvalidAgeException ক্যাচ ব্লকটি কাস্টম এক্সেপশনটি হ্যান্ডল করে এবং ব্যবহারকারীকে উপযুক্ত ত্রুটির বার্তা দেখায়।

Output:

Caught exception: Age must be 18 or older to register.
Age is valid. Registration successful!

Additional Notes:

  • Checked vs Unchecked Exceptions:
    • Checked exceptions: কাস্টম এক্সেপশন যখন Exception ক্লাস থেকে এক্সটেন্ড করা হয়, তখন সেগুলি checked exceptions হিসেবে বিবেচিত হয়। এর মানে হলো, আপনি যখন এটি থ্রো করবেন, তখন মেথড সিগনেচারে throws InvalidAgeException যুক্ত করতে হবে এবং কলারকে এই এক্সেপশনটি হ্যান্ডল করতে হবে।
    • Unchecked exceptions: যদি RuntimeException থেকে এক্সটেন্ড করেন, তবে এটি unchecked exception হবে, এবং এটি ক্যাচ না করলেও চলবে।
  • Use Case:
    • কাস্টম এক্সেপশন সাধারণত সেই ক্ষেত্রে ব্যবহার করা হয় যখন আপনি আপনার অ্যাপ্লিকেশন বা সিস্টেমের জন্য বিশেষ পরিস্থিতি বা ত্রুটি চিহ্নিত করতে চান।
    • উদাহরণস্বরূপ, আপনি যদি একটি ব্যাংক অ্যাপ্লিকেশন তৈরি করেন এবং InsufficientFundsException তৈরি করতে চান, তাহলে আপনি একটি কাস্টম এক্সেপশন ব্যবহার করতে পারেন যা ব্যালান্স কম হওয়ার কারণে ত্রুটি দেখাবে।
  • Custom exceptions তৈরি করে আপনি আপনার Java প্রোগ্রামকে আরও কার্যকরী এবং ব্যবহারকারী-বান্ধব করতে পারেন।
  • কাস্টম এক্সেপশন ব্যবহার করে আপনি নির্দিষ্ট ত্রুটির অবস্থাকে চিহ্নিত করতে এবং সেটি কার্যকরভাবে হ্যান্ডল করতে পারেন।
Content added By
Promotion

Are you sure to start over?

Loading...