ИзданиС на Java SE 17

По ΡˆΠ΅ΡΡ‚ мСсСци Ρ€Π°Π·Π²ΠΎΡ˜, Oracle Π³ΠΎ ΠΈΠ·Π΄Π°Π΄Π΅ Java SE 17 (Јава ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, стандардно ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ 17), кој Π³ΠΎ користи ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ OpenJDK ΠΊΠ°ΠΊΠΎ Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ‚Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°. Π‘ΠΎ исклучок Π½Π° ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Π½Π΅ΠΊΠΎΠΈ застарСни Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Java SE 17 ΠΎΠ΄Ρ€ΠΆΡƒΠ²Π° компатибилност Π½Π°Π½Π°Π·Π°Π΄ со ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ изданија Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Java - ΠΏΠΎΠ²Π΅ΡœΠ΅Ρ‚ΠΎ ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ напишани Java ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ сè ΡƒΡˆΡ‚Π΅ ќС Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ³Π° сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°Π°Ρ‚ спорСд Π½ΠΎΠ²Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°. Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ изданија Π½Π° Java SE 17 (JDK, JRE ΠΈ Server JRE) сС ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ Π·Π° Linux (x86_64, AArch64), Windows (x86_64) ΠΈ macOS (x86_64, AArch64). Π Π°Π·Π²ΠΈΠ΅Π½Π° ΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ OpenJDK, Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ‚Π½Π°Ρ‚Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π° Π½Π° Java 17 Π΅ цСлосно ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π° ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Ρ†Π°Ρ‚Π° GPLv2 со исклучоци Π½Π° GNU ClassPath Π·Π° Π΄Π° сС ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ²Ρ€Π·ΡƒΠ²Π°ΡšΠ΅ со ΠΊΠΎΠΌΠ΅Ρ€Ρ†ΠΈΡ˜Π°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ.

Java SE 17 Π΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ ΠΊΠ°ΠΊΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π·Π° Π΄ΠΎΠ»Π³ΠΎΡ€ΠΎΡ‡Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° (LTS) со Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ° Π΄ΠΎ 2029 Π³ΠΎΠ΄ΠΈΠ½Π°. ΠΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ°Ρ‚Π° Π·Π° ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ²Ρ€Π΅ΠΌΠ΅Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Java 16 сС ΠΏΡ€Π΅ΠΊΠΈΠ½Π°Ρ‚ΠΈ. ΠŸΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½Π°Ρ‚Π° Ρ„ΠΈΠ»ΠΈΡ˜Π°Π»Π° Java 11 LTS ќС Π±ΠΈΠ΄Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½Π° Π΄ΠΎ 2026 Π³ΠΎΠ΄ΠΈΠ½Π°. Π‘Π»Π΅Π΄Π½ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° LTS Π΅ Π·Π°ΠΊΠ°ΠΆΠ°Π½ΠΎ Π·Π° сСптСмври 2024 Π³ΠΎΠ΄ΠΈΠ½Π°. ΠŸΠΎΡ‚ΡΠ΅Ρ‚ΠΈΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΏΠΎΡ‡Π½ΡƒΠ²Π°Ρ˜ΡœΠΈ со ΠΎΠ±Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Java 10, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ сС ΠΏΡ€Π΅Ρ„Ρ€Π»ΠΈ Π½Π° Π½ΠΎΠ² Ρ€Π°Π·Π²ΠΎΠ΅Π½ процСс, ΡˆΡ‚ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π° ΠΏΠΎΠΊΡ€Π°Ρ‚ΠΎΠΊ циклус Π·Π° Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°ΡšΠ΅ Π½Π° Π½ΠΎΠ²ΠΈ изданија. Π‘Π΅Π³Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π° Π½ΠΎΠ²Π° функционалност Π²ΠΎ Π΅Π΄Π½Π° ΠΏΠΎΡΡ‚ΠΎΡ˜Π°Π½ΠΎ Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½Π° Π³Π»Π°Π²Π½Π° Π³Ρ€Π°Π½ΠΊΠ°, која Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° вСќС Π·Π°Π²Ρ€ΡˆΠ΅Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΈ ΠΎΠ΄ која Ρ„ΠΈΠ»ΠΈΡ˜Π°Π»ΠΈΡ‚Π΅ сС Ρ€Π°Π·Π³Ρ€Π°Π½ΡƒΠ²Π°Π°Ρ‚ Π½Π° сСкои ΡˆΠ΅ΡΡ‚ мСсСци Π·Π° Π΄Π° сС стабилизираат Π½ΠΎΠ²ΠΈΡ‚Π΅ изданија.

НовитС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΎ Java 17 Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°Π°Ρ‚:

  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π΅ СкспСримСнтална ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π° Π½Π° ΡΠΎΠ²ΠΏΠ°Ρ“Π°ΡšΠ΅ Π½Π° шаблони Π²ΠΎ ΠΈΠ·Ρ€Π°Π·ΠΈΡ‚Π΅ β€žΠΏΡ€Π΅ΠΊΠΈΠ½ΡƒΠ²Π°Ρ‡β€œ, ΡˆΡ‚ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π΅ Ρ‚ΠΎΡ‡Π½ΠΈ врСдности Π²ΠΎ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ β€žΡΠ»ΡƒΡ‡Π°Ρ˜β€œ, Ρ‚ΡƒΠΊΡƒ флСксибилни шаблони ΠΊΠΎΠΈ вСднаш ΠΏΠΎΠΊΡ€ΠΈΠ²Π°Π°Ρ‚ Π½ΠΈΠ·Π° врСдности Π·Π° ΠΊΠΎΠΈ Π³Π»ΠΎΠΌΠ°Π·Π½ΠΈ ΡΠΈΠ½ΡŸΠΈΡ€ΠΈ Π½Π° β€žΠ°ΠΊΠΎ ... Π΄Ρ€ΡƒΠ³ΠΎβ€œ ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ Π±ΠΈΠ»Π΅ користСни ΠΈΠ·Ρ€Π°Π·ΠΈ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ, Π²Π½Π°Ρ‚Ρ€Π΅ Π²ΠΎ β€žΠΏΡ€Π΅ΠΊΠΈΠ½ΡƒΠ²Π°Ρ‡ΠΎΡ‚β€œ Π΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½Π° способност Π·Π° Ρ€Π°ΠΊΡƒΠ²Π°ΡšΠ΅ со NULL врСдности. ΠžΠ±Ρ˜Π΅ΠΊΡ‚ o = 123L; Π‘Ρ‚Ρ€ΠΈΠ½Π³ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€Π°Π½ = ΠΏΡ€Π΅ΠΊΠΈΠ½ΡƒΠ²Π°Ρ‡ (o) { case Π¦Π΅Π» Π±Ρ€ΠΎΡ˜ 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(); };
  • Π‘Ρ‚Π°Π±ΠΈΠ»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ°Ρ‚Π° Π·Π° Π·Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π΅Π½ΠΈ класи ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΈ ΠΊΠΎΠΈ Π½Π΅ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° сС користат ΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈ класи ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΈ Π·Π° Π½Π°ΡΠ»Π΅Π΄ΡƒΠ²Π°ΡšΠ΅, ΠΏΡ€ΠΎΡˆΠΈΡ€ΡƒΠ²Π°ΡšΠ΅ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½Π° Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈΡ‚Π΅. Π—Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π΅Π½ΠΈΡ‚Π΅ класи, исто Ρ‚Π°ΠΊΠ°, ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°Π°Ρ‚ ΠΏΠΎΠ΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ Π½Π°Ρ‡ΠΈΠ½ Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° супСркласа ΠΎΡ‚ΠΊΠΎΠ»ΠΊΡƒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π·Π° пристап, Π²Ρ€Π· основа Π½Π° Сксплицитно Π½Π°Π±Ρ€ΠΎΡ˜ΡƒΠ²Π°ΡšΠ΅ Π½Π° подкласитС ΡˆΡ‚ΠΎ сС Π΄ΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΈ Π΄Π° сС ΠΏΡ€ΠΎΡˆΠΈΡ€Π°Ρ‚. ΠΏΠ°ΠΊΠ΅Ρ‚ com.example.geometry; Јавно Π·Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π΅Π½Π° класа Π”ΠΎΠ·Π²ΠΎΠ»ΠΈ Π·Π° ΠΎΠ±Π»ΠΈΠΊΡƒΠ²Π°ΡšΠ΅ com.example.polar.Circle, com.example.quad.Rectangle, com.example.quad.simple.Square {…}
  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π΅ Π²Ρ‚ΠΎΡ€Π°Ρ‚Π° ΠΏΡ€Π΅Π»ΠΈΠΌΠΈΠ½Π°Ρ€Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π° Π½Π° Vector API, која ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° вСкторски прСсмСтки ΠΊΠΎΠΈ сС Π²Ρ€ΡˆΠ°Ρ‚ со помош Π½Π° вСкторскитС инструкции Π½Π° процСсоритС x86_64 ΠΈ AArch64 ΠΈ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π°Π°Ρ‚ истоврСмСно Π΄Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Ρ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ врСдности (SIMD). Π—Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ моТноститС Π΄Π°Π΄Π΅Π½ΠΈ Π²ΠΎ ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ HotSpot JIT Π·Π° Π°Π²Ρ‚ΠΎΠ²Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° скаларнитС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π½ΠΎΠ²ΠΈΠΎΡ‚ API ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Сксплицитна ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π° Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ.
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ ΠΏΡ€Π΅Π»ΠΈΠΌΠΈΠ½Π°Ρ€Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π° Π½Π° Foreign Function & Memory API, со која Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈΡ‚Π΅ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° ΠΊΠΎΠΌΡƒΠ½ΠΈΡ†ΠΈΡ€Π°Π°Ρ‚ со ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ Π½Π°Π΄Π²ΠΎΡ€ ΠΎΠ΄ Java runtime. Новиот API Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Сфикасно Π΄Π° ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠΈ Π½Π΅ сС JVM ΠΈ Π΄Π° пристапитС Π΄ΠΎ ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° ΡˆΡ‚ΠΎ Π½Π΅ Π΅ ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°Π½Π° ΠΎΠ΄ JVM. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ²ΠΈΠΊΠ°Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ΄ Π½Π°Π΄Π²ΠΎΡ€Π΅ΡˆΠ½ΠΈ сподСлСни Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ Π΄Π° пристапитС Π΄ΠΎ ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈΡ‚Π΅ Π½Π° процСсот Π±Π΅Π· ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° JNI.
  • ΠœΠΎΡ‚ΠΎΡ€ΠΎΡ‚ Π·Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° macOS ΡˆΡ‚ΠΎ Π³ΠΎ Π½Π°ΠΏΠΎΡ˜ΡƒΠ²Π° Java 2D API, кој ΠΏΠ°ΠΊ сС користи ΠΎΠ΄ Swing API, Π΅ ΠΏΡ€ΠΈΠ»Π°Π³ΠΎΠ΄Π΅Π½ Π΄Π° Π³ΠΎ користи Metal Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠΈΠΎΡ‚ API. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Π΄Π½ΠΎ Π½Π° macOS сè ΡƒΡˆΡ‚Π΅ Π΅ OpenGL, Π° Π·Π° ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π°ΡšΠ΅ Π½Π° Metal ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Ρ‚Ρ€Π΅Π±Π° Π΄Π° сС постави ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° β€ž-Dsun.java2d.metal=trueβ€œ ΠΈ Π΄Π° сС ΠΈΠΌΠ° Π±Π°Ρ€Π΅ΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° macOS 10.14.x.
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° ΠΏΠΎΡ€Ρ‚Π° Π·Π° macOS/AArch64 ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° (ΠΊΠΎΠΌΠΏΡ˜ΡƒΡ‚Π΅Ρ€ΠΈ Π½Π° Apple Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° Π½ΠΎΠ²ΠΈ Apple M1 Ρ‡ΠΈΠΏΠΎΠ²ΠΈ). ΠšΠ°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠ° Π½Π° ΠΏΠΎΡ€Ρ‚Π°Ρ‚Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ°Ρ‚Π° Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ Π·Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π° Π½Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° W^X (Write XOR Execute), Π²ΠΎ кој мСморискитС страници Π½Π΅ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° Π±ΠΈΠ΄Π°Ρ‚ истоврСмСно достапни Π·Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ ΠΈ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅. (ΠΊΠΎΠ΄ΠΎΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΠΈ само ΠΎΡ‚ΠΊΠ°ΠΊΠΎ Π·Π°ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ, Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° страницата Π·Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° Π΅ ΠΌΠΎΠΆΠ½ΠΎ само ΠΎΡ‚ΠΊΠ°ΠΊΠΎ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ).
  • Ја Π²Ρ€Π°Ρ‚ΠΈ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° само строга (strictfp) сСмантика Π·Π° ΠΈΠ·Ρ€Π°Π·ΠΈ со ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Π° Π·Π°ΠΏΠΈΡ€ΠΊΠ°. ΠžΡ‚Ρ„Ρ€Π»Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ°Ρ‚Π° Π·Π° β€žΡΡ‚Π°Π½Π΄Π°Ρ€Π΄Π½Π°β€œ сСмантика, достапна ΠΎΠ΄ ΠΎΠ±Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Java 1.2, ΡˆΡ‚ΠΎ Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡ‚Π°Π²ΡƒΠ²Π°ΡšΠ° Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° систСми со ΠΌΠ½ΠΎΠ³Ρƒ стари x87 ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡ΠΊΠΈ копроцСсори (ΠΏΠΎ Π²ΠΎΠ²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° инструкциитС SSE2, ΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π·Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° сСмантика исчСзна).
  • Π˜ΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ Π½ΠΎΠ²ΠΈ Ρ‚ΠΈΠΏΠΎΠ²ΠΈ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΈ Π·Π° Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈ Π½Π° псСвдо-ΡΠ»ΡƒΡ‡Π°Ρ˜Π½ΠΈ Π±Ρ€ΠΎΠ΅Π²ΠΈ, ΠΊΠ°ΠΊΠΎ ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° случаСн Π±Ρ€ΠΎΡ˜. На Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈΡ‚Π΅ ΠΈΠΌ сС Π΄Π°Π²Π° моТност Π΄Π° Π³ΠΎ ΠΈΠ·Π±Π΅Ρ€Π°Ρ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚Π°ΠΌΠΎΡ‚ Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° псСвдо-ΡΠ»ΡƒΡ‡Π°Ρ˜Π½ΠΈ Π±Ρ€ΠΎΠ΅Π²ΠΈ. ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Ρ‚Π΅ΠΊΠΎΠ²ΠΈ Π½Π° ΡΠ»ΡƒΡ‡Π°Ρ˜Π½ΠΈ ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ.
  • Π‘ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Π·Π°Π΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π° силна ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»Π°Ρ†ΠΈΡ˜Π° Π½Π° ситС Π²Π½Π°Ρ‚Ρ€Π΅ΡˆΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° JDK, освСн Π·Π° ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈΡ‚Π΅ API ΠΊΠ°ΠΊΠΎ sun.misc.Unsafe. Π‘ΠΈΠ»Π½Π°Ρ‚Π° Π΅Π½ΠΊΠ°ΠΏΡΡƒΠ»Π°Ρ†ΠΈΡ˜Π° Π³ΠΈ Π±Π»ΠΎΠΊΠΈΡ€Π° ΠΎΠ±ΠΈΠ΄ΠΈΡ‚Π΅ Π·Π° пристап Π΄ΠΎ Π²Π½Π°Ρ‚Ρ€Π΅ΡˆΠ½ΠΈ класи, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ ΠΈ полиња ΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΡ‚. ΠŸΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ, строгата ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»Π°Ρ†ΠΈΡ˜Π° моТСшС Π΄Π° сС ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ ја ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° β€ž--illegal-access=permitβ€œ, Π½ΠΎ ΠΎΠ²Π° сСга Π΅ застарСно. АпликациитС Π½Π° ΠΊΠΎΠΈ ΠΈΠΌ Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π΅Π½ пристап Π΄ΠΎ Π²Π½Π°Ρ‚Ρ€Π΅ΡˆΠ½ΠΈΡ‚Π΅ класи, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ ΠΈ полиња Ρ‚Ρ€Π΅Π±Π° Сксплицитно Π΄Π° Π³ΠΈ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π°Ρ‚ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ ја ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° β€ž--add-opensβ€œ ΠΈΠ»ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΡ‚ Add-Opens Π²ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Π½Π° манифСстот.
  • АпликациитС ΠΈΠΌΠ°Π°Ρ‚ моТност Π΄Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π°Ρ‚ Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈ Π·Π° Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ, ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° Π±ΠΈΠ΄Π°Ρ‚ зависни ΠΎΠ΄ контСкст ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡ΠΊΠΈ ΠΈΠ·Π±Ρ€Π°Π½ΠΈ Π²ΠΎ врска со ΠΎΠ΄Ρ€Π΅Π΄Π΅Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π°. Π€ΠΈΠ»Ρ‚Ρ€ΠΈΡ‚Π΅ ΡˆΡ‚ΠΎ Π³ΠΈ поставивтС сС ΠΏΡ€ΠΈΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π·Π° Ρ†Π΅Π»Π°Ρ‚Π° Π²ΠΈΡ€Ρ‚ΡƒΠ΅Π»Π½Π° машина (ΡˆΠΈΡ€ΠΎΠΊΠΎ JVM), Ρ‚.Π΅. ΠΏΠΎΠΊΡ€ΠΈΠ²Π° Π½Π΅ само самата Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°, Ρ‚ΡƒΠΊΡƒ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ ΠΎΠ΄ Ρ‚Ρ€Π΅Ρ‚ΠΈ страни ΡˆΡ‚ΠΎ сС користат Π²ΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π°.
  • Swing Π³ΠΎ Π΄ΠΎΠ΄Π°Π΄Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΡ‚ javax.swing.filechooser.FileSystemView.getSystemIcon Π·Π° Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π°ΡšΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΈΠΊΠΎΠ½ΠΈ Π·Π° Π΄Π° Π³ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΈ ΠΏΡ€ΠΈΠΊΠ°ΠΆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΎΡ‚ Π½Π° Π΅ΠΊΡ€Π°Π½ΠΈΡ‚Π΅ со висока густина Π½Π° пиксСли (HighDPI).
  • java.net.DatagramSocket API ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΏΠΎΠ²Ρ€Π·ΡƒΠ²Π°ΡšΠ΅ со Multicast Π³Ρ€ΡƒΠΏΠΈ Π±Π΅Π· ΠΏΠΎΡ‚Ρ€Π΅Π±Π° ΠΎΠ΄ посСбСн java.net.MulticastSocket API.
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° Π΅ Π°Π»Π°Ρ‚ΠΊΠ°Ρ‚Π° IGV (Ideal Graph Visualizer), која ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Π° Π²ΠΈΠ·ΡƒΠ΅Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° срСдното ΠΏΡ€Π΅Ρ‚ΡΡ‚Π°Π²ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚ Π²ΠΎ ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ HotSpot VM C2 JIT.
  • Π’ΠΎ JavaDoc, ΠΏΠΎ аналогија со ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ javac, ΠΊΠΎΠ³Π° сС ΠΈΠ·Π΄Π°Π²Π° Π³Ρ€Π΅ΡˆΠΊΠ°, сСга сС ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈ Π±Ρ€ΠΎΡ˜ΠΎΡ‚ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½Π°Ρ‚Π° линија Π²ΠΎ ΠΈΠ·Π²ΠΎΡ€Π½Π°Ρ‚Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° ΠΈ Π»ΠΎΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Π³Ρ€Π΅ΡˆΠΊΠ°Ρ‚Π°.
  • Π‘Π²ΠΎΡ˜ΡΡ‚Π²ΠΎΡ‚ΠΎ native.encoding Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΎ, ΡˆΡ‚ΠΎ Π³ΠΎ ΠΎΠ΄Ρ€Π°Π·ΡƒΠ²Π° ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° систСмското ΠΊΠΎΠ΄ΠΈΡ€Π°ΡšΠ΅ Π½Π° Π·Π½Π°Ρ†ΠΈ (UTF-8, koi8-r, cp1251, ΠΈΡ‚Π½.).
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΎΡ‚ java.time.InstantSource, кој Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°Ρ‚Π΅ со Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π±Π΅Π· Π΄Π° Π±ΠΈΠ΄Π΅Ρ‚Π΅ Π²Ρ€Π·Π°Π½ΠΈ Π·Π° врСмСнска Π·ΠΎΠ½Π°.
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ΠΎ java.util.HexFormat API Π·Π° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€Π°ΡšΠ΅ Π²ΠΎ хСксадСцималСн ΠΏΡ€ΠΈΠΊΠ°Π· ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.
  • Π’ΠΎ ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ Π½Π° Ρ†Ρ€Π½Π° Π΄ΡƒΠΏΠΊΠ°, кој Π³ΠΈ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ Π·Π° Π΅Π»ΠΈΠΌΠΈΠ½Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΌΡ€Ρ‚Π²ΠΈΠΎΡ‚ ΠΊΠΎΠ΄, ΡˆΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС користи ΠΏΡ€ΠΈ ΡΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ Π½Π° тСстови Π·Π° ΠΈΠ·Π²Π΅Π΄Π±Π°.
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° β€ž-Xlog:asyncβ€œ Π²ΠΎ Runtime Π·Π° асинхроно ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π΄Π½Π΅Π²Π½ΠΈΡ†ΠΈ.
  • ΠŸΡ€ΠΈ Π²ΠΎΡΠΏΠΎΡΡ‚Π°Π²ΡƒΠ²Π°ΡšΠ΅ Π±Π΅Π·Π±Π΅Π΄Π½ΠΈ врски, стандардно Π΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ TLS 1.3 (ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ сС ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡˆΠ΅ TLS 1.2).
  • ΠŸΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ застарСниот АПИ Π½Π° Applet (java.applet.Applet*, javax.swing.JApplet), кој сС ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡˆΠ΅ Π·Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ Java Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π²ΠΎ прСлистувачот, бСшС прСмСстСн Π²ΠΎ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° Π·Π°ΠΊΠ°ΠΆΠ°Π½Π° Π·Π° Π±Ρ€ΠΈΡˆΠ΅ΡšΠ΅ (ΠΈΠ·Π³ΡƒΠ±Π΅Π½Π° ваТност ΠΏΠΎ Π·Π°Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ°Ρ‚Π° Π·Π° Java ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ Π·Π° прСлистувачи).
  • ΠŸΡ€Π΅Ρ„Ρ€Π»Π΅Π½ Π²ΠΎ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° ΠœΠ΅Π½Π°ΡŸΠ΅Ρ€ Π·Π° бСзбСдност, ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ Π·Π° ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅, кој ΠΎΠ΄Π°ΠΌΠ½Π° ја ΠΈΠ·Π³ΡƒΠ±ΠΈ ΡΠ²ΠΎΡ˜Π°Ρ‚Π° ваТност ΠΈ сС ΠΏΠΎΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊΠΎ Π½Π΅ΠΏΠΎΠ΄ΠΈΠ³Π½Π°Ρ‚ ΠΏΠΎ ΠΏΡ€Π΅ΠΊΠΈΠ½ΠΎΡ‚ Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ°Ρ‚Π° Π·Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊΠΎΡ‚ Π½Π° прСлистувачот.
  • ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ Π·Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°ΡšΠ΅ RMI Π΅ отстранСт, кој Π΅ застарСн, сС ΠΏΡ€Π΅Ρ„Ρ€Π»ΠΈ Π²ΠΎ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° ΠΎΠΏΡ†ΠΈΡ˜Π° Π½Π°Π·Π°Π΄ Π²ΠΎ Java 8 ΠΈ рСчиси никогаш Π½Π΅ сС користи Π²ΠΎ соврСмСната ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°.
  • ЕкспСримСнталСн ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ Π΅ отстранСт ΠΎΠ΄ SDK ΡˆΡ‚ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΡƒΠ²Π° JIT (само Π½Π°Π²Ρ€Π΅ΠΌΠ΅) Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π½Π° Java ΠΊΠΎΠ΄ Π·Π° HotSpot JVM, ΠΊΠ°ΠΊΠΎ ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠΎΡ‚ Π½Π° ΠΏΡ€Π΅Π²Π΅Π½Ρ‚ΠΈΠ²Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° (AOT, ΠΎΠ΄Π½Π°ΠΏΡ€Π΅Π΄) Π½Π° класи Π΄ΠΎ машински ΠΊΠΎΠ΄ ΠΏΡ€Π΅Π΄ Π΄Π° ја стартуватС Π²ΠΈΡ€Ρ‚ΡƒΠ΅Π»Π½Π°Ρ‚Π° машина. ΠšΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ Π΅ напишан Π½Π° Јава ΠΈ Π²Ρ€Π· основа Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Π“Ρ€Π°Π°Π». Π—Π°Π±Π΅Π»Π΅ΠΆΠ°Π½ΠΎ Π΅ Π΄Π΅ΠΊΠ° ΠΎΠ΄Ρ€ΠΆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ Π±Π°Ρ€Π° ΠΌΠ½ΠΎΠ³Ρƒ Ρ‚Ρ€ΡƒΠ΄, ΡˆΡ‚ΠΎ Π½Π΅ сС ΠΎΠΏΡ€Π°Π²Π΄ΡƒΠ²Π° Π²ΠΎ услови Π½Π° нСдостаток Π½Π° ΠΏΠΎΠ±Π°Ρ€ΡƒΠ²Π°Ρ‡ΠΊΠ° кај ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€