рд╕рд╣рд╛ рдорд╣рд┐рдиреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рдирдВрддрд░, рдУрд░реЕрдХрд▓ рд╕реЛрдбрд▓реЗ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдЬрд╛рд╡рд╛ рдПрд╕рдИ 15 (Java Platform, Standard Edition 15), рдУрдкрди-рд╕реЛрд░реНрд╕ OpenJDK рдкреНрд░рдХрд▓реНрдк рд╕рдВрджрд░реНрдн рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдореНрд╣рдгреВрди рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рддреЛ. Java SE 15 Java рдкреНрд▓реЕрдЯрдлреЙрд░реНрдордЪреНрдпрд╛ рдорд╛рдЧреАрд▓ рд░рд┐рд▓реАрдЭрд╕рд╣ рдмреЕрдХрд╡рд░реНрдб рд╕реБрд╕рдВрдЧрддрддрд╛ рд░рд╛рдЦрддреЗ; рдирд╡реАрди рдЖрд╡реГрддреНрддреА рдЕрдВрддрд░реНрдЧрдд рд▓реЙрдиреНрдЪ рдХреЗрд▓реНрдпрд╛рд╡рд░ рд╕рд░реНрд╡ рдкреВрд░реНрд╡реА рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ Java рдкреНрд░рдХрд▓реНрдк рдмрджрд▓рд╛рдВрд╢рд┐рд╡рд╛рдп рдХрд╛рд░реНрдп рдХрд░рддреАрд▓. рдЬрд╛рд╡рд╛ SE 15 рдмрд┐рд▓реНрдб рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддрдпрд╛рд░ (JDK, JRE рдЖрдгрд┐ рд╕рд░реНрд╡реНрд╣рд░ JRE) рддрдпрд╛рд░ Linux (x86_64), Windows рдЖрдгрд┐ macOS рд╕рд╛рдареА. OpenJDK рдкреНрд░рдХрд▓реНрдкрд╛рджреНрд╡рд╛рд░реЗ рд╡рд┐рдХрд╕рд┐рдд рд╕рдВрджрд░реНрдн рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЬрд╛рд╡рд╛ 15 GPLv2 рд▓рд╛рдпрд╕рдиреНрд╕ рдЕрдВрддрд░реНрдЧрдд рдкреВрд░реНрдгрдкрдгреЗ рдореБрдХреНрдд рд╕реНрд░реЛрдд рдЖрд╣реЗ, GNU ClassPath рдЕрдкрд╡рд╛рдж рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЙрддреНрдкрд╛рджрдирд╛рдВрд╕рд╣ рдбрд╛рдпрдиреЕрдорд┐рдХ рд▓рд┐рдВрдХрд┐рдВрдЧрд▓рд╛ рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ.

Java SE 15 рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд░реНрдерди рдкреНрд░рдХрд╛рд╢рди рдореНрд╣рдгреВрди рд╡рд░реНрдЧреАрдХреГрдд рдЖрд╣реЗ рдЖрдгрд┐ рдкреБрдвреАрд▓ рдкреНрд░рдХрд╛рд╢рди рд╣реЛрдИрдкрд░реНрдпрдВрдд рдЕрджреНрдпрддрдиреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреЗ рд╕реБрд░реВ рдареЗрд╡реЗрд▓. рд▓рд╛рдБрдЧ рдЯрд░реНрдо рд╕рдкреЛрд░реНрдЯ (LTS) рд╢рд╛рдЦрд╛ Java SE 11 рдЕрд╕рд╛рд╡реА, рдЬреА 2026 рдкрд░реНрдпрдВрдд рдЕрдкрдбреЗрдЯреНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдд рд░рд╛рд╣реАрд▓. Java 8 рдЪреА рдкреВрд░реНрд╡реАрдЪреА LTS рд╢рд╛рдЦрд╛ рдбрд┐рд╕реЗрдВрдмрд░ 2020 рдкрд░реНрдпрдВрдд рд╕рдорд░реНрдерд┐рдд рдЕрд╕реЗрд▓. рдкреБрдвреАрд▓ LTS рд░рд┐рд▓реАрдЭ рд╕рдкреНрдЯреЗрдВрдмрд░ 2021 рдордзреНрдпреЗ рд╣реЛрдгрд╛рд░ рдЖрд╣реЗ. рдЖрдореНтАНрд╣реА рддреБрдореНтАНрд╣рд╛рд▓рд╛ рдЖрдард╡рдг рдХрд░реВрди рджреЗрддреЛ рдХреА Java 10 рдЪреНтАНрдпрд╛ рд░рд┐рд▓реАрдЭрдкрд╛рд╕реВрди рд╕реБрд░реВрд╡рд╛рдд рдХрд░реВрди, рдкреНрд░реЙрдЬреЗрдХреНрдЯ рдирд╡реАрди рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯ рдкреНрд░рдХреНрд░рд┐рдпреЗрдХрдбреЗ рд╡рд│рд▓рд╛, рдирд╡реАрди рд░рд┐рд▓реАрдЭ рддрдпрд╛рд░ рд╣реЛрдгреНтАНрдпрд╛рд╕рд╛рдареА рдПрдХ рд▓рд╣рд╛рди рдЪрдХреНрд░ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ. рдирд╡реАрди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЖрддрд╛ рдПрдХрд╛ рд╕рддрдд рдЕрджреНрдпрдпрд╛рд╡рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦреЗрдд рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рддрдпрд╛рд░ рдмрджрд▓ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗрдд рдЖрдгрд┐ рдирд╡реАрди рдкреНрд░рдХрд╛рд╢рдирд╛рдВрдирд╛ рд╕реНрдерд┐рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рджрд░ рд╕рд╣рд╛ рдорд╣рд┐рдиреНрдпрд╛рдВрдиреА рд╢рд╛рдЦрд╛ рд╢рд╛рдЦрд╛ рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд.

рдЗрдЭ рдирд╡рдХрд▓реНрдкрдирд╛ рдЬрд╛рд╡рд╛ 15 рдХрд░реВ рд╢рдХрддрд╛ рдЦреВрдг рдХрд░рд╛:

  • рдЕрдВрдЧрднреВрдд EdDSA (Edwards-Curve Digital Signature Algorithm) рдбрд┐рдЬрд┐рдЯрд▓ рд╕реНрд╡рд╛рдХреНрд╖рд░реА рдирд┐рд░реНрдорд┐рддреА рдЕрд▓реНрдЧреЛрд░рд┐рджрдорд╕рд╛рдареА рд╕рдорд░реНрдерди рдЖрд░рдПрдлрд╕реА 8032). рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд EdDSA рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдирд╛рд╣реА, рд╕рд╛рдЗрдб-рдЪреЕрдирд▓ рд╣рд▓реНрд▓реНрдпрд╛рдВрдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рд┐рдд рдЖрд╣реЗ (рд╕рд░реНрд╡ рдЧрдгрдирд╛рдВрдЪреА рд╕рддрдд рд╡реЗрд│ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХреЗрд▓реА рдЬрд╛рддреЗ) рдЖрдгрд┐ рд╕рдорд╛рди рдкрд╛рддрд│реАрдЪреНрдпрд╛ рд╕рдВрд░рдХреНрд╖рдгрд╛рд╕рд╣, C рднрд╛рд╖реЗрдд рд▓рд┐рд╣рд┐рд▓реЗрд▓реНрдпрд╛ рд╡рд┐рджреНрдпрдорд╛рди ECDSA рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдкреЗрдХреНрд╖рд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдд рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, 126-рдмрд┐рдЯ рдХреА рд╕рд╣ рд▓рдВрдмрд╡рд░реНрддреБрд│рд╛рдХрд╛рд░ рд╡рдХреНрд░ рд╡рд╛рдкрд░рдгрд╛рд░реЗ EdDSA, secp256r1 рд▓рдВрдмрд╡рд░реНрддреБрд│ рд╡рдХреНрд░ рдЖрдгрд┐ 128-рдмрд┐рдЯ рдХреА рд╕рд╣ ECDSA рд╕рд╛рд░рдЦреЗ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ.
  • рдЬреЛрдбрд▓реЗ рд╕реАрд▓рдмрдВрдж рд╡рд░реНрдЧ рдЖрдгрд┐ рдЗрдВрдЯрд░рдлреЗрд╕рд╕рд╛рдареА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╕рдорд░реНрдерди, рдЬреНрдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рдЗрддрд░ рд╡рд░реНрдЧ рдЖрдгрд┐ рдЗрдВрдЯрд░рдлреЗрд╕рджреНрд╡рд╛рд░реЗ рд╡рд╛рд░рд╕рд╛, рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдВрд╡рд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдУрд╡реНрд╣рд░рд░рд╛рдЗрдб рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрдд рдирд╛рд╣реА. рд╡рд┐рд╕реНрддрд╛рд░рд╛рд╕рд╛рдареА рдЕрдиреБрдордд рдЙрдкрд╡рд░реНрдЧ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЖрдзрд╛рд░рд╛рд╡рд░, рд╕реАрд▓рдмрдВрдж рд╡рд░реНрдЧ рдНрдХреНрд╕реЗрд╕ рдореЙрдбрд┐рдлрд╛рдпрд░реНрд╕рдкреЗрдХреНрд╖рд╛ рд╕реБрдкрд░рдХреНрд▓рд╛рд╕рдЪрд╛ рд╡рд╛рдкрд░ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдзрд┐рдХ рдШреЛрд╖рдгрд╛рддреНрдордХ рдорд╛рд░реНрдЧ рджреЗрдЦреАрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛рдд.

    рдкреЕрдХреЗрдЬ com.example.geometry;

    рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕реАрд▓рдмрдВрдж рд╡рд░реНрдЧ рдЖрдХрд╛рд░
    com.example.polar.Circle рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ,
    com.example.quad.Rectangle,
    com.example.quad.simple.Square {тАж}

  • рдЬреЛрдбрд▓реЗ рд▓рдкрд▓реЗрд▓реНрдпрд╛ рд╡рд░реНрдЧрд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЗ рдЗрддрд░ рд╡рд░реНрдЧрд╛рдВрдЪреНрдпрд╛ рдмрд╛рдпрдХреЛрдбрджреНрд╡рд╛рд░реЗ рдереЗрдЯ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рдК рд╢рдХрдд рдирд╛рд╣реАрдд. рд▓рдкрд╡рд┐рд▓реЗрд▓реНрдпрд╛ рд╡рд░реНрдЧрд╛рдВрдЪрд╛ рдореБрдЦреНрдп рдЙрджреНрджреЗрд╢ рдлреНрд░реЗрдорд╡рд░реНрдХрдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рдгреЗ рд╣рд╛ рдЖрд╣реЗ рдЬреЗ рд░рдирдЯрд╛рдЗрдордЪреНрдпрд╛ рд╡реЗрд│реА рдбрд╛рдпрдиреЕрдорд┐рдХрд░рд┐рддреНрдпрд╛ рдХреНрд▓рд╛рд╕ рддрдпрд╛рд░ рдХрд░рддрд╛рдд рдЖрдгрд┐ рдЕрдкреНрд░рддреНрдпрдХреНрд╖рдкрдгреЗ рддреНрдпрд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░рддрд╛рдд. рдкреНрд░рддрд┐рдмрд┐рдВрдм. рдЕрд╢рд╛ рд╡рд░реНрдЧрд╛рдВрдЪреЗ рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдорд░реНрдпрд╛рджрд┐рдд рдЬреАрд╡рдирдЪрдХреНрд░ рдЕрд╕рддреЗ, рддреНрдпрд╛рдореБрд│реЗ рд╕реНрдЯреЕрдЯрд┐рдХрд▓реА рд╡реНрдпреБрддреНрдкрдиреНрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡рд░реНрдЧрд╛рдВрдордзреВрди рдкреНрд░рд╡реЗрд╢ рдорд┐рд│рд╡рдгреНрдпрд╛рд╕рд╛рдареА рддреНрдпрд╛рдВрдЪреА рджреЗрдЦрднрд╛рд▓ рдХрд░рдгреЗ рдиреНрдпрд╛рдпреНрдп рдирд╛рд╣реА рдЖрдгрд┐ рддреНрдпрд╛рдореБрд│реЗ рдореЗрдорд░реА рд╡рд╛рдкрд░ рд╡рд╛рдвреЗрд▓. рд▓рдкрд▓реЗрд▓реЗ рд╡рд░реНрдЧ рджреЗрдЦреАрд▓ рдиреЙрди-рд╕реНрдЯрдБрдбрд░реНрдб API sun.misc.Unsafe::defineAnonymousClass рдЪреА рдЧрд░рдЬ рджреВрд░ рдХрд░рддрд╛рдд, рдЬреЗ рднрд╡рд┐рд╖реНрдпрд╛рдд рдХрд╛рдврд▓реЗ рдЬрд╛рддреАрд▓.
  • ZGC (Z рдЧрд╛рд░реНрдмреЗрдЬ рдХрд▓реЗрдХреНрдЯрд░) рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рд╕реНрдерд┐рд░ рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рд╡реНрдпрд╛рдкрдХ рд╡рд╛рдкрд░рд╛рд╕рд╛рдареА рд╕рдЬреНрдЬ рдореНрд╣рдгреВрди рдУрд│рдЦрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. ZGC рдирд┐рд╖реНрдХреНрд░рд┐рдп рдореЛрдбрдордзреНрдпреЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ, рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рдХрдЪрд░рд╛ рд╕рдВрдХрд▓рдирд╛рдореБрд│реЗ рд╡рд┐рд▓рдВрдм рдХрдореА рдХрд░рддреЗ (ZGC рд╡рд╛рдкрд░рддрд╛рдирд╛ рд╕реНрдЯреЙрд▓ рдЯрд╛рдЗрдо 10 ms рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдирд╛рд╣реА.) рдЖрдгрд┐ рдЕрдиреЗрдХ рд╢рдВрднрд░ рдореЗрдЧрд╛рдмрд╛рдЗрдЯреНрд╕рдкрд╛рд╕реВрди рддреЗ рдЕрдиреЗрдХ рдЯреЗрд░рд╛рдмрд╛рдЗрдЯреНрд╕рдкрд░реНрдпрдВрддрдЪреНрдпрд╛ рдЖрдХрд╛рд░рд╛рдд рд▓рд╣рд╛рди рдЖрдгрд┐ рдореЛрдареНрдпрд╛ рджреЛрдиреНрд╣реА рдвреАрдЧрд╛рдВрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░реВ рд╢рдХрддреЗ.
  • рд╕реНрдерд┐рд░ рдЖрдгрд┐ рд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рдкрд░рд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдЖрдврд│рд▓реЗ
    рдХрдЪрд░рд╛ рдЧреЛрд│рд╛ рдХрд░рдгрд╛рд░рд╛ рд╢реЗрдирд╛рдиреНрдбрд╛рд╣, рдХрдореАрддрдХрдореА рд╡рд┐рд░рд╛рдорд╛рдВрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреЗ (рдХрдореА-рд╡рд┐рд░рд╛рдо-рд╡реЗрд│ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╛рд╣рдХ). Shenandoah рд╣реЗ Red Hat рджреНрд╡рд╛рд░реЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рдЬрд╛рд╡рд╛ рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреНрдпрд╛ рд╕рдорд╛рдВрддрд░ рдХреНрд▓реАрдирдЕрдк рдЪрд╛рд▓рд╡реВрди рдХрдЪрд░рд╛ рдЧреЛрд│рд╛ рдХрд░рддрд╛рдирд╛ рд╕реНрдЯреЙрд▓рдЪрд╛ рд╡реЗрд│ рдХрдореА рдХрд░рдгрд╛рд░реНтАНрдпрд╛ рдЕрд▓реНрдЧреЛрд░рд┐рджрдордЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рд╕рд╛рдареА рдкреНрд░рд╕рд┐рджреНрдз рдЖрд╣реЗ. рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╛рд╣рдХрд╛рдиреЗ рд╕рд╛рджрд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡рд┐рд▓рдВрдмрд╛рдВрдЪрд╛ рдЖрдХрд╛рд░ рдЕрдВрджрд╛рдЬреЗ рдЖрд╣реЗ рдЖрдгрд┐ рдврд┐рдЧрд╛рд▒реНрдпрд╛рдЪреНрдпрд╛ рдЖрдХрд╛рд░рд╛рд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдирд╛рд╣реА, рдореНрд╣рдгрдЬреЗ. 200 MB рдЖрдгрд┐ 200 GB рдЪреНрдпрд╛ рдвреАрдЧрд╛рдВрд╕рд╛рдареА рд╡рд┐рд▓рдВрдм рд╕рдорд╛рди рдЕрд╕реЗрд▓ (рдмрд╛рд╣реЗрд░ рдпреЗрдК рдирдХрд╛ 50 ms рдЪреНрдпрд╛ рдкреБрдвреЗ рдЖрдгрд┐ рд╕рд╣рд╕рд╛ 10 ms рдЪреНрдпрд╛ рдЖрдд);

  • рд╕рдорд░реНрдерди рд╕реНрдерд┐рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рднрд╛рд╖реЗрдордзреНрдпреЗ рд╕рд╛рджрд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рдордЬрдХреВрд░ рдмреНрд▓реЙрдХреНрд╕ - рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓рд┐рдЯрд░рд▓реНрд╕рдЪрд╛ рдПрдХ рдирд╡реАрди рдкреНрд░рдХрд╛рд░ рдЬреЛ рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЕрд░реЗрдХреНрдЯрд░ рдПрд╕реНрдХреЗрдкрд┐рдВрдЧ рди рд╡рд╛рдкрд░рддрд╛ рдЖрдгрд┐ рдмреНрд▓реЙрдХрдордзреНрдпреЗ рдореВрд│ рдордЬрдХреВрд░ рдлреЙрд░рдореЕрдЯрд┐рдВрдЧ рдЬрддрди рди рдХрд░рддрд╛ рд╕реНрддреНрд░реЛрдд рдХреЛрдбрдордзреНрдпреЗ рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рдЯреЗрдХреНрд╕реНрдЯ рдбреЗрдЯрд╛ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЛ. рдмреНрд▓реЙрдХ рддреАрди рджреБрд╣реЗрд░реА рдЕрд╡рддрд░рдгрд╛рдВрдиреА рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЖрд╣реЗ.

    рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдХреЛрдбрдРрд╡рдЬреА

    рд╕реНрдЯреНрд░рд┐рдВрдЧ html = " ┬╗ +
    "\n\t" + " ┬╗ +
    "\n\t\t" + " \"Java 1 рдпреЗрдереЗ рдЖрд╣реЗ!\" ┬╗ +
    "\n\t" + " ┬╗ +
    "\n" + " ";

    рдЖрдкрдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрддрд╛:

    html рд╕реНрдЯреНрд░рд┐рдВрдЧ = """


    ┬╗рдЬрд╛рд╡рд╛ резрел\
    рдпреЗрдереЗ рдЖрд╣реЗ!

    """;

  • рдкреБрдиреНрд╣рд╛ рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗ рд▓реЗрдЧрд╕реА рдбреЗрдЯрд╛рдЧреНрд░рд╛рдорд╕реЙрдХреЗрдЯ API. java.net.DatagramSocket рдЖрдгрд┐ java.net.MulticastSocket рдЪреА рдЬреБрдиреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрдзреБрдирд┐рдХ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рдмрджрд▓рд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ рдЬреА рдбреАрдмрдЧ рдХрд░рдгреЗ рдЖрдгрд┐ рджреЗрдЦрд░реЗрдЦ рдХрд░рдгреЗ рд╕реЛрдкреЗ рдЖрд╣реЗ рдЖрдгрд┐ рдкреНрд░рдХрд▓реНрдкрд╛рдордзреНрдпреЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЖрднрд╛рд╕реА рдкреНрд░рд╡рд╛рд╣рд╛рдВрд╢реА рд╕реБрд╕рдВрдЧрдд рдЖрд╣реЗ. рдпрдВрддреНрд░рдорд╛рдЧ. рд╡рд┐рджреНрдпрдорд╛рди рдХреЛрдбрд╕рд╣ рд╕рдВрднрд╛рд╡реНрдп рд╡рд┐рд╕рдВрдЧрддрддреЗрдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдЬреБрдиреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд╛рдврд▓реА рдЧреЗрд▓реА рдирд╛рд╣реА рдЖрдгрд┐ jdk.net.usePlainDatagramSocketImpl рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░реВрди рд╕рдХреНрд╖рдо рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХрддреЗ.
  • рджреБрд╕рд░реА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдирдореБрдирд╛ рдЬреБрд│рдгреЗ "instanceof" рдСрдкрд░реЗрдЯрд░рдордзреНрдпреЗ, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдЪреЗрдХ рдХреЗрд▓реЗрд▓реЗ рдореВрд▓реНрдп рдНрдХреНрд╕реЗрд╕ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдерд╛рдирд┐рдХ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рддреНрд╡рд░рд┐рдд рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рддреБрдореНрд╣реА "рд╕реНрдЯреНрд░рд┐рдВрдЧ s = (рд╕реНрдЯреНрд░рд┐рдВрдЧ) obj" рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЗрд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп "if (obj instance of String s && s.length() > 5) {.. s.contains(..) ..}" рд▓рдЧреЗрдЪ рд▓рд┐рд╣реВ рд╢рдХрддрд╛.

    рд╣реЛрддреЗ:

    рдЬрд░ (рдЧрдЯрд╛рдЪреНрдпрд╛ рд╡рд╕реНрддреБ рдЙрджрд╛рд╣рд░рдг) {
    рдЧрдЯ рдЧрдЯ = (рд╕рдореВрд╣)рдСрдмреНрдЬ;
    var entries = group.getEntries();
    }

    рдЖрддрд╛ рддреБрдореНрд╣реА "рдЧреНрд░реБрдк рдЧреНрд░реБрдк = (рдЧреНрд░реБрдк) рдСрдмреНрдЬреЗрдХреНрдЯ" рдпрд╛ рд╡реНрдпрд╛рдЦреНрдпреЗрд╢рд┐рд╡рд╛рдп рдХрд░реВ рд╢рдХрддрд╛:

    рдЬрд░ (рд╕рдореВрд╣ рдЧрдЯрд╛рдЪреЗ рд╡рд╕реНрддреБ рдЙрджрд╛рд╣рд░рдг) {
    var entries = group.getEntries();
    }

  • рд╕реБрдЪрд╡рд▓реЗ рдХреАрд╡рд░реНрдбрдЪреА рджреБрд╕рд░реА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА "рд╡рд┐рдХреНрд░рдо", рдЬреЗ рд╡рд░реНрдЧ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рдХреЙрдореНрдкреЕрдХреНрдЯ рдлреЙрд░реНрдо рдкреНрд░рджрд╛рди рдХрд░рддреЗ, рдЬреНрдпрд╛рдореБрд│реЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдорд╛рди (), рд╣реЕрд╢рдХреЛрдб() рдЖрдгрд┐ toString() рд╕рд╛рд░рдЦреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдкрджреНрдзрддреА рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреЗ рдЯрд╛рд│рддрд╛ рдпреЗрддреЗ рдЬреЗрдереЗ рдбреЗрдЯрд╛ рдХреЗрд╡рд│ рдЕрд╢рд╛ рдлреАрд▓реНрдбрдордзреНрдпреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ рдЬреНрдпрд╛рдВрдЪреЗ рд╡рд░реНрддрди рдмрджрд▓рдд рдирд╛рд╣реА. рдЬреЗрд╡реНрд╣рд╛ рд╡рд░реНрдЧ рд╕рдорд╛рди(), рд╣реЕрд╢рдХреЛрдб() рдЖрдгрд┐ toString() рдкрджреНрдзрддреАрдВрдЪреА рдорд╛рдирдХ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╡рд╛рдкрд░рддреЛ, рддреЗрд╡реНрд╣рд╛ рддреЛ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕реНрдкрд╖реНрдЯ рд╡реНрдпрд╛рдЦреНрдпрд╛рд╢рд┐рд╡рд╛рдп рдХрд░реВ рд╢рдХрддреЛ:

    рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реЗрдХреЙрд░реНрдб рдмрдБрдХ рд╡реНрдпрд╡рд╣рд╛рд░ (рд╕реНрдерд╛рдирд┐рдХ рддрд╛рд░реАрдЦ рддрд╛рд░реАрдЦ,
    рджреБрдкреНрдкрдЯ рд░рдХреНрдХрдо
    рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡рд░реНрдгрди) {}

    рд╣реА рдШреЛрд╖рдгрд╛ рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдЖрдгрд┐ рдЧреЗрдЯрд░ рдкрджреНрдзрддреАрдВрдЪреНрдпрд╛ рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд рд╕рдорд╛рди(), рд╣реЕрд╢рдХреЛрдб() рдЖрдгрд┐ toString() рдкрджреНрдзрддреАрдВрдЪреА рдЖрдкреЛрдЖрдк рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЬреЛрдбреЗрд▓.

  • рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдлреЙрд░реЗрди-рдореЗрдорд░реА рдНрдХреНрд╕реЗрд╕ API рдЪреЗ рджреБрд╕рд░реЗ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди, рдирд╡реАрди MemorySegment, MemoryAddress, рдЖрдгрд┐ MemoryLayout abstractions рдордзреНрдпреЗ рдлреЗрд░рдлрд╛рд░ рдХрд░реВрди Java рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рдирд╛ рд╕реБрд░рдХреНрд╖рд┐рддрдкрдгреЗ рдЖрдгрд┐ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдиреЗ Java рд╣реАрдкрдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ рдореЗрдорд░реА рдХреНрд╖реЗрддреНрд░рд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ.
  • рдЕрдХреНрд╖рдо рдЖрдгрд┐ рд▓реЙрдХрд┐рдВрдЧ рдУрд╡реНрд╣рд░рд╣реЗрдб рдХрдореА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА HotSpot JVM рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗрд▓реЗ рдмрд╛рдпрд╕реНрдб рд▓реЙрдХрд┐рдВрдЧ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рддрдВрддреНрд░ рдирд╛рдкрд╕рдВрдд рдХреЗрд▓реЗ. рдпрд╛ рддрдВрддреНрд░рд╛рдиреЗ рдЖрдзреБрдирд┐рдХ CPUs рджреНрд╡рд╛рд░реЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЕрдгреБ рд╕реВрдЪрдирд╛рдВрд╕рд╣ рдкреНрд░рдгрд╛рд▓реАрдВрд╡рд░реАрд▓ рддреНрдпрд╛рдЪреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХрддрд╛ рдЧрдорд╛рд╡рд▓реА рдЖрд╣реЗ, рдЖрдгрд┐ рддреНрдпрд╛рдЪреНрдпрд╛ рдЬрдЯрд┐рд▓рддреЗрдореБрд│реЗ рд░рд╛рдЦрдгреНрдпрд╛рд╕рд╛рдареА рдЦреВрдк рд╢реНрд░рдо-рдХреЗрдВрджреНрд░рд┐рдд рдЖрд╣реЗ.
  • рдШреЛрд╖рд┐рдд рдХреЗрд▓реЗ рдХрд╛рд▓рдмрд╛рд╣реНрдп рдпрдВрддреНрд░рдгрд╛ RMI рд╕рдХреНрд░рд┐рдпрдХрд░рдг, рдЬреЗ рднрд╡рд┐рд╖реНрдпрд╛рддреАрд▓ рдкреНрд░рдХрд╛рд╢рдирд╛рдд рдХрд╛рдврд▓реЗ рдЬрд╛рдИрд▓. рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд▓реЗ рдЖрд╣реЗ рдХреА RMI рд╕рдХреНрд░рд┐рдпрдХрд░рдг рдЬреБрдиреЗ рдЖрд╣реЗ, Java 8 рдордзреАрд▓ рдкрд░реНрдпрд╛рдпрд╛рдЪреНрдпрд╛ рд╢реНрд░реЗрдгреАрдордзреНрдпреЗ рд╕реЛрдбрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдзреБрдирд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░рд╛рдд рдЬрд╡рд│рдЬрд╡рд│ рдХрдзреАрд╣реА рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рдд рдирд╛рд╣реА.
  • рд╣рдЯрд╡рд▓реЗ JavaScript рдЗрдВрдЬрд┐рди рдиреЙрд░рд░реНрди, рдЬреЗ Java SE 11 рдордзреНрдпреЗ рдирд╛рдкрд╕рдВрдд рдХреЗрд▓реЗ рд╣реЛрддреЗ.
  • рдХрд╛рдврд▓реЗ Solaris OS рдЖрдгрд┐ SPARC рдкреНрд░реЛрд╕реЗрд╕рд░рд╕рд╛рдареА рдкреЛрд░реНрдЯ (Solaris/SPARC, Solaris/x64 рдЖрдгрд┐ Linux/SPARC). рд╣реА рдкреЛрд░реНрдЯреНрд╕ рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реНрдпрд╛рдиреЗ рд╕рдореБрджрд╛рдпрд╛рд▓рд╛ рд╕реЛрд▓рд╛рд░рд┐рд╕ рдЖрдгрд┐ SPARC рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ рд░рд╛рдЦрдгреНрдпрд╛рдд рд╡реЗрд│ рди рдШрд╛рд▓рд╡рддрд╛ рдирд╡реАрди OpenJDK рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рд▓рд╛ рдЧрддреА рдорд┐рд│реЗрд▓.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛