কী পার্থক্য – জাভাতে চেক করা বনাম চেক করা ব্যতিক্রম
একটি ব্যতিক্রম একটি রানটাইম ত্রুটি। চেক করা এবং আনচেক করা ব্যতিক্রম হিসাবে পরিচিত দুই ধরনের ব্যতিক্রম আছে। যখন একটি চেক করা ব্যতিক্রম ঘটে, তখন জাভা অ্যাপ্লিকেশনটি একটি ফাইল, ডিভাইস বা ডাটাবেসের মতো বাইরের সম্পদের সাথে সংযুক্ত থাকে। এই ব্যতিক্রমগুলি কম্পাইলার দ্বারা চেক করা হয়। চেক করা ব্যতিক্রমগুলির কিছু উদাহরণ হল IO ব্যতিক্রম এবং FileNotFound ব্যতিক্রম। যখন একটি অচেক করা ব্যতিক্রম ঘটে, তখন অ্যাপ্লিকেশনটি বাইরের কোনো সম্পদের সাথে সংযুক্ত থাকে না। এই ব্যতিক্রমগুলি কম্পাইলার দ্বারা চেক করা হয় না। অচেক করা ব্যতিক্রমগুলির কিছু উদাহরণ হল পাটিগণিত ব্যতিক্রম এবং ArrayOutOfBound ব্যতিক্রম।এই নিবন্ধটি জাভাতে চেক করা এবং চেক করা ব্যতিক্রমের মধ্যে পার্থক্য নিয়ে আলোচনা করে। জাভাতে চেক করা এবং আনচেক করা ব্যতিক্রমের মধ্যে মূল পার্থক্য হল একটি চেক করা ব্যতিক্রম কম্পাইলার দ্বারা চেক করা হয় যখন একটি আনচেক করা ব্যতিক্রম কম্পাইলার দ্বারা চেক করা হয় না।
জাভাতে চেক করা ব্যতিক্রম কি?
যখন একটি চেক করা ব্যতিক্রম ঘটে, তখন জাভা অ্যাপ্লিকেশনটি একটি বাইরের সংস্থানের সাথে সংযুক্ত থাকে। এই সম্পদ যেমন প্রিন্টার হিসাবে একটি ডিভাইস হতে পারে. এটি একটি ফাইল বা ডাটাবেস হতে পারে। অতএব, সেই ব্যতিক্রমগুলি কম্পাইলার দ্বারা চেক করা হয়। IO ব্যতিক্রম একটি চেক করা ব্যতিক্রম। এটি ডিভাইসে একটি ত্রুটির কারণে ঘটে। যখন অ্যাপ্লিকেশনটি এমন একটি ফাইল অ্যাক্সেস করে যা বিদ্যমান নেই, তখন এটি একটি FileNotFound ব্যতিক্রম ঘটাবে। ডেটা সঞ্চয় করার জন্য একটি অ্যাপ্লিকেশন যেমন মাইএসকিউএল, ওরাকল ইত্যাদি ডাটাবেসের সাথে সংযুক্ত করা যেতে পারে। যদি একটি ডাটাবেসের সাথে সম্পর্কিত একটি ত্রুটি ঘটেছে, এটি একটি SQL ব্যতিক্রম হবে। এগুলি চেক করা ব্যতিক্রমগুলির কিছু উদাহরণ। এই সব, অ্যাপ্লিকেশন একটি বহিরাগত সম্পদের সাথে সংযুক্ত করা হয়.চেক করা ব্যতিক্রমগুলিতে, ব্যতিক্রমটি পরিচালনা করা বাধ্যতামূলক। এটি পরিচালনা না করা হলে, প্রোগ্রামের সঠিক প্রবাহ বন্ধ হয়ে যাবে, এবং ক্লাস ফাইল তৈরি হবে না। ট্রাই, ক্যাচ ব্লক ব্যবহার করে ত্রুটিটি পরিচালনা করা যেতে পারে।
চিত্র 01: চেকড এক্সেপশন হ্যান্ডলিং
উপরের মতে, ফাইল রিডার ফাইল থেকে ডেটা পড়ে। text1.txt ফাইলটি নির্দিষ্ট স্থানে বিদ্যমান নেই। কোড যে ব্যতিক্রম দিতে পারে চেষ্টা ব্লক ভিতরে স্থাপন করা হয়. প্রিন্ট করার বার্তাটি ক্যাচ ব্লকের ভিতরে রয়েছে। যেহেতু text1.txt নামে কোনো ফাইল নেই, তাই এটি একটি FileNotFoundException সৃষ্টি করে। ব্যতিক্রম হ্যান্ডলিং ব্যবহার করে, বার্তাটি স্ক্রিনে মুদ্রিত হয়৷
জাভাতে আনচেক করা ব্যতিক্রমগুলি কী?
অচেক করা ব্যতিক্রমগুলি কম্পাইলার দ্বারা চেক করা হয় না।চেক করা ব্যতিক্রমগুলির বিপরীতে, চেক না করা ব্যতিক্রমগুলির সাথে, জাভা অ্যাপ্লিকেশনটি ফাইল, ডাটাবেস বা ডিভাইসের মতো বাইরের সংস্থানের সাথে সংযুক্ত নয়। কিছু সাধারণ আনচেক করা ব্যতিক্রম হল পাটিগণিত, ArrayOutOfBound এবং NullPointer ব্যতিক্রম।
int a=10, b=0;
int div=a/b;
System.out.println(div);
এটি শূন্য দ্বারা 'a' ডাইভ করার কারণে একটি গাণিতিক ব্যতিক্রম ঘটবে। নিচের কোডটি পড়ুন।
চিত্র 02: পাটিগণিত ব্যতিক্রম পরিচালনা
উপরের প্রোগ্রাম অনুসারে, ভেরিয়েবল a একটি পূর্ণসংখ্যার মান। ভেরিয়েবল b হল 0। এই দুটি সংখ্যার বিভাজন হল শূন্য দ্বারা বিভাজ্য। অতএব, এটি একটি গাণিতিক ব্যতিক্রম ঘটাবে। এটি ট্রাই-ক্যাচ ব্লক ব্যবহার করে পরিচালনা করা যেতে পারে।যে বিবৃতিগুলি ব্যতিক্রম ঘটাতে পারে সেগুলি ট্রাই ব্লকের ভিতরে স্থাপন করা হয়। প্রদর্শিত বার্তাটি ক্যাচ ব্লকে রয়েছে৷
কোডের নিচের অংশটি পড়ুন।
int array1={1, 2, 3, 4, 5};
System.out.println(array1[5]);
এটি একটি ব্যতিক্রম ঘটবে৷ অ্যারে 1 হল 5টি উপাদান সহ একটি অ্যারে। অ্যারের শুরুর সূচক শূন্য। 5th সূচক মান মুদ্রণ একটি ব্যতিক্রম কারণ এটি সীমার বাইরে। অ্যারে1-এর সর্বোচ্চ সূচক হল 4.
চিত্র 03: ArrayOutOfBound ব্যতিক্রম হ্যান্ডলিং
উপরের প্রোগ্রাম অনুসারে, অ্যারে 1-এ 5টি উপাদান রয়েছে। সূচী 6 সহ উপাদানটি মুদ্রণ করলে একটি ব্যতিক্রম ঘটবে কারণ এটি সীমার বাইরে। অ্যারে 1 তে সর্বাধিক সূচী সংরক্ষণ করা যেতে পারে 5৷ ত্রুটি বার্তাটি ক্যাচ ব্লক কার্যকর করার মাধ্যমে প্রিন্ট করে৷
জাভাতে চেক করা এবং আনচেক করা ব্যতিক্রমের মধ্যে মিল কী
জাভাতে চেক করা এবং আনচেক করা ব্যতিক্রম উভয়ই জাভাতে ব্যতিক্রম প্রকার।
জাভাতে চেক করা এবং আনচেক করা ব্যতিক্রমের মধ্যে পার্থক্য কী?
জাভাতে চেক বনাম চেক করা ব্যতিক্রম |
|
একটি চেক করা ব্যতিক্রম একটি রানটাইম ত্রুটি যা কম্পাইলার দ্বারা চেক করা হয়৷ | একটি অচেক করা ব্যতিক্রম একটি রানটাইম ত্রুটি যা কম্পাইলার দ্বারা চেক করা হয় না। |
ঘটনা | |
যখন একটি চেক করা ব্যতিক্রম ঘটে, তখন জাভা অ্যাপ্লিকেশনটি ফাইল, ডিভাইস বা ডাটাবেসের মতো একটি বাইরের সংস্থানের সাথে সংযুক্ত থাকে৷ | যখন একটি অচেক করা ব্যতিক্রম ঘটে, তখন জাভা অ্যাপ্লিকেশনটি বাইরের সংস্থানের সাথে সংযুক্ত থাকে না। |
উদাহরণ | |
IOException, FileNotFoundException, SQLException হল চেক করা ব্যতিক্রমের কিছু উদাহরণ। | গাণিতিক ব্যতিক্রম, ArrayOutOfBoundException, NullPointerException হল অচেক করা ব্যতিক্রমগুলির কিছু উদাহরণ। |
সারাংশ – জাভাতে চেক করা বনাম চেক করা ব্যতিক্রম
একটি ব্যতিক্রম হল একটি ইভেন্ট যা প্রোগ্রাম প্রবাহের কার্য সম্পাদনে বাধা দেয়। দুই ধরনের ব্যতিক্রম আছে। এগুলিকে চেক করা ব্যতিক্রম এবং আনচেক করা ব্যতিক্রম বলা হয়। এই নিবন্ধটি একটি চেক করা ব্যতিক্রম এবং অচেক করা ব্যতিক্রমগুলির মধ্যে পার্থক্য নিয়ে আলোচনা করেছে। জাভাতে চেক করা এবং চেক করা ব্যতিক্রমের মধ্যে পার্থক্য হল একটি চেক করা ব্যতিক্রম কম্পাইলার দ্বারা চেক করা হয় যখন একটি আনচেক করা ব্যতিক্রম কম্পাইলার দ্বারা চেক করা হয় না। যেহেতু ব্যতিক্রমগুলি প্রোগ্রাম নির্বাহের সঠিক প্রবাহকে প্রভাবিত করে, সেগুলি পরিচালনা করা একটি ভাল প্রোগ্রামিং অনুশীলন।