Java SE 19 ထွက်ရှိသည်။

ဖွံ့ဖြိုးတိုးတက်မှုခြောက်လအကြာတွင် Oracle သည် OpenJDK open source ပရောဂျက်ကို ကိုးကားအကောင်အထည်ဖော်မှုအဖြစ် OpenJDK ကိုအသုံးပြုသည့် Java SE 19 (Java Platform၊ Standard Edition 19) ပလပ်ဖောင်းကို ထုတ်ပြန်ခဲ့သည်။ တားမြစ်ထားသောအင်္ဂါရပ်အချို့ကို ဖယ်ရှားခြင်းမှလွဲ၍ Java SE 19 သည် ယခင်ထွက်ရှိထားသော Java ပလပ်ဖောင်းများနှင့် နောက်ပြန်လိုက်ဖက်မှုကို ထိန်းသိမ်းထားပါသည်—ယခင်ရေးသားထားသော Java ပရောဂျက်အများစုသည် ဗားရှင်းအသစ်အောက်တွင် လုပ်ဆောင်သည့်အခါ ပြုပြင်မွမ်းမံခြင်းမရှိဘဲ ဆက်လက်လုပ်ဆောင်နေမည်ဖြစ်သည်။ ထည့်သွင်းနိုင်သော Java SE 19 (JDK၊ JRE နှင့် Server JRE) တို့ကို Linux (x86_64၊ AArch64)၊ Windows (x86_64) နှင့် macOS (x86_64၊ AArch64) အတွက် ပြင်ဆင်ထားပါသည်။ OpenJDK ပရောဂျက်မှ တီထွင်ထားသည့် Java 19 ရည်ညွှန်းအကောင်အထည်ဖော်မှုသည် GNU ClassPath ခြွင်းချက်များဖြင့် GNU ClassPath ခြွင်းချက်ဖြင့် စီးပွားရေးဆိုင်ရာထုတ်ကုန်များနှင့် တက်ကြွစွာချိတ်ဆက်ခြင်းကို ခွင့်ပြုရန် GPLv2 လိုင်စင်အောက်တွင် အပြည့်အဝဖွင့်ထားသည်။

Java SE 19 ကို နောက်ထွက်မွမ်းမံမှုများမတိုင်မီ ထုတ်ပြန်ရမည့် အဆင့်မြှင့်တင်မှုများနှင့်အတူ ပုံမှန်ပံ့ပိုးမှုထုတ်ဝေမှုအဖြစ် အမျိုးအစားခွဲခြားထားသည်။ Long Term Support (LTS) ဌာနခွဲသည် 17 ခုနှစ်အထိ အပ်ဒိတ်များကို လက်ခံရရှိမည့် Java SE 2029 ဖြစ်သင့်သည်။ Java 10 ထုတ်ဝေမှုမှစတင်ပြီး ပရောဂျက်သည် အသစ်ထွက်ရှိမှုအတွက် ပိုမိုတိုတောင်းသော စက်ဝန်းကို ဆိုလိုသည့် ဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အသစ်သို့ ပြောင်းသွားသည်ကို သတိရပါ။ လုပ်ဆောင်ချက်အသစ်များကို ယခု ပြီးစီးနေပြီဖြစ်သော ပြောင်းလဲမှုများနှင့် ထုတ်ဝေမှုများကို တည်ငြိမ်စေရန် ခြောက်လတစ်ကြိမ် အကိုင်းအခက်များ ပေါင်းစပ်ထားသည့် အဆက်မပြတ် မွမ်းမံထားသော မာစတာဌာနခွဲတစ်ခုတွင် လုပ်ဆောင်ချက်အသစ်များကို တီထွင်လျက်ရှိသည်။

Java 19 တွင် အင်္ဂါရပ်အသစ်များ ပါဝင်သည်-

  • စံချိန်ပုံစံများအတွက် ပဏာမပံ့ပိုးမှုအား အဆိုပြုထားပြီး၊ Java 16 တွင် မိတ်ဆက်ထားသော ပုံစံကိုက်ညီမှုအင်္ဂါရပ်ကို မှတ်တမ်းအတန်းများ၏ တန်ဖိုးများကို ခွဲခြမ်းစိတ်ဖြာရန် ကိရိယာများဖြင့် တိုးချဲ့ထားသည်။ ဥပမာ- record Point(int x, int y) {} void printSum(Object o) { if (o instanceof Point(int x, int y)) { System.out.println(x+y); } }
  • Linux တည်ဆောက်မှုများသည် RISC-V ဗိသုကာအတွက် ပံ့ပိုးမှုပေးသည်။
  • FFM (Foreign Function & Memory) API အတွက် ပဏာမပံ့ပိုးမှု ထပ်လောင်းထည့်သွင်းထားပြီး၊ သင်သည် ပြင်ပစာကြည့်တိုက်များမှ လုပ်ဆောင်ချက်များကို ခေါ်ဆိုကာ JVM ပြင်ပမှတ်ဉာဏ်ကို ရယူခြင်းဖြင့် Java ပရိုဂရမ်များ၏ ပြင်ပကုဒ်နှင့် ဒေတာ အပြန်အလှန် ဆက်သွယ်မှုကို စုစည်းနိုင်စေပါသည်။
  • စွမ်းဆောင်ရည်မြင့် multi-threaded applications များ၏ အရေးအသားနှင့် ပြုပြင်ထိန်းသိမ်းမှုကို အလွန်ရိုးရှင်းလွယ်ကူစေသည့် ပေါ့ပါးသော ချည်မျှင်များဖြစ်သည့် virtual thread များအတွက် ပံ့ပိုးမှု ထပ်လောင်းထည့်ထားပါသည်။
  • x86_64 နှင့် AArch64 ပရိုဆက်ဆာများပေါ်တွင် vector ညွှန်ကြားချက်များကို အသုံးပြု၍ လုပ်ဆောင်သည့် Vector API ၏ စတုတ္ထမြောက် အစမ်းကြည့်ရှုမှုကို အဆိုပြုခဲ့ပြီး လုပ်ဆောင်ချက်များကို တန်ဖိုးများစွာ (SIMD) တွင် တစ်ပြိုင်နက်အသုံးပြုနိုင်အောင် လုပ်ဆောင်ပေးပါသည်။ scalar လည်ပတ်မှုများကို အလိုအလျောက် ဘက်မလိုက်ခြင်းအတွက် HotSpot JIT compiler တွင် ပံ့ပိုးပေးထားသည့် စွမ်းဆောင်ရည်များနှင့် မတူဘဲ API အသစ်သည် အပြိုင်ဒေတာ လုပ်ဆောင်ခြင်းအတွက် vectorization ကို ပြတ်သားစွာ ထိန်းချုပ်နိုင်စေပါသည်။
  • "ခလုတ်" စကားရပ်များတွင် တူညီသောပုံစံဖြင့် တတိယစမ်းသပ်အကောင်အထည်ဖော်မှုကို ထည့်သွင်းထားပြီး၊ အတိအကျတန်ဖိုးများထက် တိကျသောတန်ဖိုးများထက် "case" အညွှန်းများတွင် ပြောင်းလွယ်ပြင်လွယ်ရှိသော ပုံစံများကို အသုံးပြုနိုင်ပြီး၊ ယခင်အသုံးပြုရန်လိုအပ်သည့် တန်ဖိုးအတွဲလိုက်များကိုပါ တစ်ခါတည်းထည့်သွင်းထားသည်။ "if...else" အသုံးအနှုန်းများ ၏ ရှုပ်ထွေးသော ကွင်းဆက်များ။ အရာဝတ္ထု o = 123L; String formatted = switch (o) { case Integer i --> String.format("int %d", i); case Long l -> String.format("long %d",l); case Double d -> String.format("double %f", d); case String s -> String.format("String %s", s); မူရင်း -> o.toString(); };
  • မတူညီသော thread များအတွင်း လုပ်ဆောင်နေသော အလုပ်များစွာကို တစ်ခုတည်းလုပ်ကွက်တစ်ခုအဖြစ် ကုသခြင်းဖြင့် multi-threaded applications များ၏ ဖွံ့ဖြိုးတိုးတက်မှုကို ရိုးရှင်းစေမည့် တည်ဆောက်ပုံအပြိုင်အပြိုင်အတွက် စမ်းသပ် API တစ်ခုကို ပေါင်းထည့်ထားသည်။

source: opennet.ru

မှတ်ချက် Add