আমি নিশ্চিত না যে আমি এটি করেছি (যদিও জাভাডক দেওয়া হলেও আমি আপনাকে কেন সংকোচ করব তা বলতে পারিনি), তবে সেখানে চাপানো ব্যতিক্রমগুলির তালিকা রয়েছে Throwable
, যার মাধ্যমে আপনি যুক্ত করতে পারেন addSuppressed
। জাভাডক বলে না বলে মনে হচ্ছে এটি কেবলমাত্র জেভিএম-এর সাথে-সংস্থানসমূহ ব্যবহার করে:
এই ব্যতিক্রমটি সরবরাহ করার জন্য চাপা দেওয়া ব্যতিক্রমগুলির ক্ষেত্রে নির্দিষ্ট ব্যতিক্রম সংযোজন করে। এই পদ্ধতিটি থ্রেড-নিরাপদ এবং সাধারনত সম্পদ বিবরণীর মাধ্যমে সাধারণত (স্বয়ংক্রিয়ভাবে এবং অন্তর্নিহিত) বলা হয়।
কনস্ট্রাক্টরের মাধ্যমে অক্ষম করা না থাকলে দমন আচরণ সক্ষম করা হয়। যখন দমন অক্ষম করা হয়, এই পদ্ধতিটি তার যুক্তি যাচাই করা ছাড়া আর কিছুই করে না।
মনে রাখবেন যে যখন একটি ব্যতিক্রম অন্য ব্যতিক্রম ঘটায় তখন প্রথম ব্যতিক্রম সাধারণত ধরা পড়ে এবং তারপরে দ্বিতীয় ব্যতিক্রমটি প্রতিক্রিয়াতে ফেলে দেওয়া হয়। অন্য কথায়, দুটি ব্যতিক্রমের মধ্যে একটি কার্যকরী সংযোগ রয়েছে। বিপরীতে, এমন পরিস্থিতি রয়েছে যেখানে দুটি স্বতন্ত্র ব্যতিক্রম ভাইবোন কোড ব্লকগুলিতে নিক্ষেপ করা যেতে পারে, বিশেষত একটি সংস্থান-সংস্থার বিবৃতিতে চেষ্টা ব্লক এবং সংকলক দ্বারা উত্পাদিত অবশেষে ব্লক যা সংস্থানটি বন্ধ করে দেয়। এই পরিস্থিতিতে ছোঁড়া ব্যতিক্রমগুলির মধ্যে একটিরই প্রচার করা যেতে পারে। ট্রান্স-উইথ রিসোর্স বিবৃতিতে, যখন এই জাতীয় দুটি ব্যতিক্রম হয়, চেষ্টা ব্লক থেকে উদ্ভূত ব্যতিক্রম প্রচার করা হয় এবং শেষ অবধি থেকে ব্যতিক্রম চেষ্টা ব্লক থেকে ব্যতিক্রম দ্বারা দমন করা ব্যতিক্রমগুলির তালিকায় যুক্ত হয়। একটি ব্যতিক্রম স্ট্যাকটি খুলে দেয়,
একটি ব্যতিক্রম হতে পারে ব্যতিক্রমকে দমন করতে পারে এবং অন্য ব্যতিক্রমের কারণেও হতে পারে। কোনও ব্যতিক্রমের কারণ রয়েছে কিনা তা নির্মানের সময় অর্থহীনভাবে জানা যায়, ব্যতিক্রম অন্য ব্যতিক্রমকে দমন করবে কিনা তা অসম্পূর্ণ, যা কেবলমাত্র ব্যতিক্রম ছোঁড়ার পরে নির্ধারিত হয়।
নোট করুন যে প্রোগ্রামার লিখিত কোড এই পরিস্থিতিতে কল করার সুবিধা নিতে সক্ষম হয় যেখানে একাধিক ভাইবোন ব্যতিক্রম রয়েছে এবং কেবল একটির প্রচার করা যেতে পারে।
AggregateException
এর সাথে ব্যতিক্রমগুলির একটি তালিকা রয়েছে। এই ধারণাটি জাভাতেও প্রযোজ্য।