ট্রাই-উইথ-রিসোর্স ইমপ্রুভমেন্ট (Try-with-resources Improvement)
ট্রাই-উইথ-রিসোর্সেস (try-with-resources) ব্যবহার করে বিদ্যমান এফেক্টিভলি-ফাইনাল ভ্যারিয়েবলগুলোকে সরাসরি ব্যবহার করুন।
কোড তুলনা
✕ Java 8
Connection conn = getConnection();
// Must re-declare in try
try (Connection c = conn) {
use(c);
}
✓ Java 9+
Connection conn = getConnection();
// Use existing variable directly
try (conn) {
use(conn);
}
এই কোডে সমস্যা দেখছেন? আমাদের জানান।
কেন আধুনিক পদ্ধতি ভালো
কোনো ভ্যারিয়েবল পুনরায় ডিক্লেয়ারের প্রয়োজন নেই
বিদ্যমান ভ্যারিয়েবলের নাম সরাসরি ব্যবহার করুন।
কম বিভ্রান্তি
ট্রাই ব্লকের ভিতরে কোনো আলাদা ভ্যারিয়েবল নাম ব্যবহার করতে হয় না।
সুসংক্ষিপ্ত
কম লাইন কোড, একই রিসোর্স সেফটি (resource safety)।
পুরনো পদ্ধতি
ভ্যারিয়েবল পুনরায় ডিক্লেয়ার
আধুনিক পদ্ধতি
এফেক্টিভলি ফাইনাল (Effectively Final)
JDK থেকে
9
কঠিনতা
প্রাথমিক
JDK সমর্থন
ট্রাই-উইথ-রিসোর্স ইমপ্রুভমেন্ট (Try-with-resources Improvement)
উপলব্ধ
JDK 9 (সেপ্টেম্বর 2017) থেকে ব্যাপকভাবে উপলব্ধ
কীভাবে কাজ করে
Java 9 এফেক্টিভলি-ফাইনাল ভ্যারিয়েবলগুলোকে পুনরায় ডিক্লেয়ার (re-declaration) ছাড়াই সরাসরি ট্রাই-উইথ-রিসোর্সেস-এ ব্যবহার করার অনুমতি দেয়। রিসোর্সটি ট্রাই ব্লকের বাইরে তৈরি করা হলে এটি আরও পরিষ্কার হয়।
সম্পর্কিত ডকুমেন্টেশন
প্রমাণ