تحسين try-with-resources
استخدم المتغيرات الفعلياً النهائية مباشرةً في 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);
}
هل ترى مشكلة في هذا الكود؟ أخبرنا.
لماذا يتفوق الأسلوب الحديث
لا إعادة تصريح
استخدم اسم المتغير الموجود مباشرةً.
أقل التباساً
لا اسم متغير منفصل داخل كتلة try.
موجز
أسطر أقل بنفس أمان الموارد.
الأسلوب القديم
إعادة تصريح المتغير
الأسلوب الحديث
فعلياً نهائي
منذ JDK
9
الصعوبة
مبتدئ
دعم JDK
تحسين try-with-resources
متاح
متاح على نطاق واسع منذ JDK 9 (سبتمبر 2017)
كيف يعمل
يتيح Java 9 استخدام المتغيرات الفعلياً النهائية مباشرةً في try-with-resources دون إعادة التصريح. هذا أنظف عند إنشاء المورد خارج كتلة try.
توثيق ذو صلة