Java8, Java11, Java17 ์๋ง์ ๋ฒ์ ๋ค์ด ์๋ค๊ณ ์ด์ผ๊ธฐ ํ์ง๋ง,
์ด ๋ฒ์ ๋ค์ ๋ํด์ ์ด๊ฒ ๋ฌด์์ด๊ณ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง๋ ์ ๋ชฐ๋ผ์ ์ ๋ฆฌํด๋ณด์๋ค.
Java8, Java11, Java17
์ด๊ฒ๋ค์ ์ค๋ผํด(Oracle)์ด๋ ๋ค๋ฅธ ๊ฐ๋ฐ์ ๋ฐ ์ปค๋ฎค๋ํฐ์ ์ํด ๊ฐ๋ฐ๋ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์ฌ๋ฌ ๋ฒ์ ์ ๋งํ๋ค.
์ด๋ฌํ ๋ฒ์ ๋ค์ ์๋ฐ ํ๋ซํผ์ ์ฃผ์ ์ ๋ฐ์ดํธ์ด๋ฉฐ, ๊ฐ๊ฐ ์๋ก์ด ๊ธฐ๋ฅ๊ณผ ๊ฐ์ ์ฌํญ์ด ํฌํจ๋์ด ์๋ค.
Java 8
1. ๋๋ค ํํ์(Lambda Expressions)
: ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ์ง์ํ๊ธฐ ์ํด ๋๋ค ํํ์์ด ๋์ ๋์๋ค.
๋๋ค ํํ์์ ํตํด ์ฝ๋๋ฅผ ๊ฐ๊ฒฐํ๊ฒ ์์ฑํ๊ณ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ์ฉ์ดํ๊ฒ ํ ์ ์๋ค.
2. ์คํธ๋ฆผ API(Stream API)
: ์ปฌ๋ ์ ์ฒ๋ฆฌ๋ฅผ ์ํ ์๋ก์ด API๋ก, ๋ณ๋ ฌ์ฒ๋ฆฌ๋ฅผ ์ง์ํ๋ฉฐ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ์คํ์ผ์ ์ฑํํ๋ค.
3. ๋ ์ง์ ์๊ฐ API(Date and Time API)
: java.time ํจํค์ง๊ฐ ๋์ ๋์ด ๋ ์ง์ ์๊ฐ์ ์ฝ๊ฒ ์ฒ๋ฆฌ ํ ์ ์๊ฒ ๋์๋ค.
4. ๋ํดํธ ๋ฉ์๋(Default Methods)
: ์ธํฐํ์ด์ค์ ๋ํดํธ ๋ฉ์๋๋ฅผ ์ถ๊ฐํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
์ด๋ฅผ ํตํด ๊ธฐ์กด ์ธํฐํ์ด์ค๋ฅผ ์์ ํ์ง ์๊ณ ๋ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ ์๋ค.
Java 11
1. ๋ก์ปฌ ๋ณ์ ๋ฌธ๋ฒ (Local Variable Syntax for Lambda Parameters)
: ๋๋ค ํํ์์ ํ๋ผ๋ฏธํฐ์ var ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ก์ปฌ ๋ณ์์ ๊ฐ์ด ์ฌ์ฉํ ์ ์๊ฒ ๋์๋ค.
2. HTTP ํด๋ผ์ด์ธํธ (HTTP Client)
: ํ์คํ๋ HTTP ํด๋ผ์ด์ธํธ API๊ฐ ๋์ ๋์๋ค.
์ด๋ฅผ ์ฌ์ฉํ์ฌ HTTP/2 ๋ฐ WebSocket์ ์ง์ํ๋ ํด๋ผ์ด์ธํธ๋ฅผ ์ฝ๊ฒ ์์ฑํ ์ ์๋ค.
3. Epsilon GC
: ์คํ์ ์ธ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ธ Epsilon GC๊ฐ ๋์ ๋์๋ค.
์ด๋ GC๊ฐ ๋นํ์ฑํ๋์ด ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐ ํด์ ์ฑ๋ฅ์ ํ ์คํธํ ๋ ์ ์ฉํ๋ค.
4. ZGC(Experimental)
: ๋์ฉ๋ ํ ๋ฉ๋ชจ๋ฆฌ์ ์ต์ ํ๋ ์คํ์ ์ธ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ธ ZGC๊ฐ ๋์ ๋์๋ค.
์ด๋ ๋งค์ฐ ํฐ ํ ํฌ๊ธฐ์์๋ ์ผ๊ด๋ ์ฑ๋ฅ์ ์ ๊ณตํ๋ค.
Java 17
1. ํจํด ๋งค์นญ(Pattern Matching)
: instance of ์ฐ์ฐ์์ switch ๋ฌธ์ ํจํด ๋งค์นญ์ ๋์ ํ์๋ค.
์ด๋ฅผ ํตํด ์ฝ๋๋ฅผ ๋ ๊ฐ๊ฒฐํ๊ฒ ์์ฑํ๊ณ ์ฝ๊ธฐ ์ฝ๊ฒ ๋ง๋ค ์ ์๋ค.
2. Sealed ํด๋์ค (Sealed Classes)
: ํด๋์ค ๋ฐ ์ธํฐํ์ด์ค๋ฅผ ๋ด์ธ(Sealed) ํจ์ผ๋ก์จ ์ธ๋ถ์์ ์์์ด๋ ๊ตฌํ์ ์ ํํ ์ ์๋ค.
3. ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ(New Memory Structure)
: ๊ธฐ์กด์ HotSpot ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ํ์ฌ ํจ์จ์ฑ์ ํฅ์์ํจ๋ค.
4. ๋ฉ์ธ ๋ฉ์๋์ ํ ํฌ๊ธฐ ์ง์ (Heap Size on Launch)
: java ๋ช ๋ น์ด๋ฅผ ํตํด ๋ฉ์ธ ๋ฉ์๋๋ฅผ ์คํํ ๋ ํ ํฌ๊ธฐ๋ฅผ ์ง์ ํ ์ ์๊ฒ ๋์๋ค.
'๐ฉ๐ปโ๐ป Developer > JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ฐ์ฒด์งํฅ ์ค๊ณ 5์์น SOLID 1. ๋จ์ผ์ฑ ์์์น (SRP) (0) | 2025.01.22 |
---|---|
[Java] ๋ณ๋ ฌ ๋ฐ์ดํฐ ์ฒ๋ฆฌ "๋ณ๋ ฌ ์คํธ๋ฆผ" (1) | 2024.05.01 |
[Java] hashCode()์ equals()๋? (0) | 2024.03.31 |
[Java] '๊น์ ๋ณต์ฌ'์ '์์ ๋ณต์ฌ'๋? (0) | 2024.03.30 |
๋๊ธ