+1 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)
چه قابلیت های جدیدی به جاوا 7 به نسیت جاوا 6 اضافه شده است؟

1 پاسخ

+4 امتیاز
قبل توسط (1.4هزار امتیاز)
ویرایش شده قبل توسط

چند تغییر مهم:

1) عملگرهای diamond (<>):

در نسخ قبل تر از جاوا 7 مجبور بودید که در موقع کار با Generic، در دو طرف نوع ها را مشخص کنید:

Map<String,Set<Object>> map = new HashMap<String,Set<Object>>();

ولی در نسخه 7، برای کامپایلر، تعریف نوع در سمت چپ کافی است (تعریف در سمت راست اضافه است):

Map<String,Set<Object>> map = new HashMap<>();

2) استفاده از String در switch-case:

در نسخ قبل از جاوا 7 مجبور بودید با استفاده از if-else و تابع string.equals چنین کاری را انجام دهید، ولی در نسخه 7 می توانید از string در swith-case استفاده کنید (از تابع string.equals استفاده می شود).

3) مدیریت خودکار منابع:

در نسخ قبل از جاوا 7، برنامه نویس می بایست منابعی مانند File و input/output stream را به صورت دستی در بلاک finllay میبست. در نسخه 7 می توان تمام منابعی که قرار است در بلاک try استفاده شوند را به ترتیب داخل پردانتز نوشت (با ; جدا می شوند). البته دقت شود که منابع مورد نظر باید واسط java.lang.AutoCloseable را پیاده سازی کرده باشند.

try(FileOutputStream fos = new FileOutputStream("test.txt"); 
    DataOutputStream dos = new DataOutputStream(fos)){
    dos.writeUTF("Hello world");
}
catch(IOException e){
    // log and handle the exception
}

4) پیشرفت در hanle کردن exceptionها

در جاوا 7 در بلاکِ catch می توان چند نوع exception را catch کرد، امکانی که در نسخ قبلی به طور صریح وجود نداشت. در جاوا 7:

try{
	process(); // throws three exceptions
} 
catch(JmsException | PrcoessException | IOException e){
    // log and handle all Exceptions
}

5) API جدید برای File System

در جاوا 7 API جدیدی تحت عنوان NIO 2.0 برای File System ارایه شد که بسیاری از مشکلات Java IO را حل کرده و بهبودهای زیادی  بخشیده و کار با آن راحت تر است.

 

سوالات مشابه

+2 امتیاز
1 پاسخ 320 بازدید
+2 امتیاز
2 پاسخ 1.1هزار بازدید
0 امتیاز
1 پاسخ 301 بازدید
+1 امتیاز
1 پاسخ 818 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط kashi (7.2هزار امتیاز)
+1 امتیاز
1 پاسخ 1.2هزار بازدید
+1 امتیاز
1 پاسخ 525 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط kashi (7.2هزار امتیاز)
0 امتیاز
1 پاسخ 441 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
+2 امتیاز
0 پاسخ 957 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
+1 امتیاز
1 پاسخ 665 بازدید
سوال شده 4 سال قبل در برنامه نویسی توسط Reza.R (851 امتیاز)
+1 امتیاز
1 پاسخ 1.2هزار بازدید
سوال شده 5 سال قبل در برنامه نویسی توسط 1993 (242 امتیاز)
...