কম্পিউটার টিউটোরিয়াল

জাভাতে ArrayStoreException (অনচেকড) কীভাবে হ্যান্ডেল করবেন?


java.lang.ArrayStoreException একটি অনচেকড এক্সেপশন এবং এটি তখন ঘটে যখন আমরা একটি অ্যারেতে ভিন্ন টাইপের অবজেক্ট স্টোর করার চেষ্টা করি। সাধারণত java.lang.ArrayStoreException: java.lang.Integer দেখা যায়, যা ঘটে যখন একটি ইন্টিজারকে স্ট্রিং অ্যারে বা ফ্লোট অ্যারে gibi ভিন্ন টাইপের অ্যারেতে রাখার চেষ্টা করা হয়।

উদাহরণ ১

public class ArrayStoreExceptionTest {
    public static void main(String[] args) {
        Object[] names = new Float[2];
        names[1] = new Integer(2);
    }
}

আউটপুট

Exception in thread "main" java.lang.ArrayStoreException: java.lang.Integer
    at ArrayStoreExceptionTest.main(ArrayStoreExceptionTest.java:4)

উপরোক্ত প্রোগ্রামে, java.lang.ArrayStoreException: java.lang.Integer ঘটেছে কারণ:

  • java.lang.ArrayStoreException: জাভা ল্যাঙ্গুয়েজ দ্বারা নিক্ষিপ্ত এক্সেপশন যখন আমরা java.lang.Integer টাইপের অবজেক্ট java.lang.Float অ্যারেতে রাখার চেষ্টা করি।
  • java.lang.Integer: ইন্টিজার হল সেই অবজেক্টের টাইপ যা ভিন্ন টাইপের অ্যারেতে রাখার চেষ্টা করা হয়েছে।

ArrayStoreException কীভাবে হ্যান্ডেল করবেন

ArrayStoreException কে try এবং catch ব্লক ব্যবহার করে হ্যান্ডেল করা যায়।

  • যে স্টেটমেন্টগুলো ArrayStoreException নিক্ষেপ করতে পারে সেগুলো try এবং catch ব্লক দিয়ে ঘেরে দিন।
  • ArrayStoreException ক্যাচ করুন।
  • প্রোগ্রামের জন্য প্রয়োজনীয় অ্যাকশন নিন, কারণ এক্সেপশন হ্যান্ডেল করার কারণে এক্সিকিউশন অ্যাবোর্ট হবে না।

উদাহরণ ২

public class ArrayStoreExceptionTest {
    public static void main(String[] args) {
        Object[] names = new Float[2];
        try {
            names[1] = new Integer(2);
        } catch (ArrayStoreException e) {
            e.printStackTrace();
            System.out.println("ArrayStoreException is handled");
        }
        System.out.println("Continuing with the statements after try and catch blocks");
    }
}

আউটপুট

ArrayStoreException is handled
Continuing with the statements after try and catch blocks
java.lang.ArrayStoreException: java.lang.Integer
    at ArrayStoreExceptionTest.main(ArrayStoreExceptionTest.java:5)

উপরোক্ত উদাহরণে, যখন এক্সেপশন ঘটে, এক্সিকিউশন throw পয়েন্ট থেকে catch ব্লকে চলে যায়। এতে catch ব্লকের স্টেটমেন্ট এক্সিকিউট হয় এবং try-catch ব্লকের পরের স্টেটমেন্টগুলো চালিয়ে যায়।

  1. জাভাতে বর্তমান ডেট পাওয়ার পদ্ধতি

  2. জাভা ৯-এ JShell-এর স্টার্টআপ কাস্টমাইজ করা

  3. জাভা ৯-এ JShell-এর ডিফল্ট এডিটর মডিফাই করার পদ্ধতি

  4. জাভাতে JFrame কে স্ক্রিনের সেন্টারে প্রদর্শন করুন