Feature
04.10.4 ~ 15.4.14
J2SE 5 ์์ ์ถ๊ฐGenerics ์ถ๊ฐ
Auto Boxing / Unboxing ์ง์
Enumeration ์ถ๊ฐ
Varable Parameter ์ง์
Static Import ์ถ๊ฐ
Concurrentcy API ์ง์
java.util.Scanner
์ถ๊ฐ
06.12.23 ~ 18.10.18
J2SE 6 ์์ ์ถ๊ฐJava ๋ฒ์ ํ๊ธฐ๋ฒ๋ณ๊ฒฝ
J2SE -> Java SE ๋ก ๋ณ๊ฒฝ
JDBC 4.0 ์ง์
11.7.28 ~ 18.10.18
Java SE 7 ์์ ์ถ๊ฐDynamic Language ์ง์
switch
๋ฌธ์ String ์ฌ์ฉ
try-with-resource ์ง์
Diamond Operator ์ง์
14.3.18 ~ 18.10.16
Java SE 8 ์์ ์ถ๊ฐLambda Expression
๋๋คํํ์์ ์ฌ์ฉํ์ฌ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ผ๋ก ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
์ธํฐํ์ด์ค ์คํฉ ๋ณ๊ฒฝ
์ธํฐํ์ด์ค ๋ด์ default method
๋ฐ static method
๊ฐ ์ง์๋๋ค.
๊ธฐ์กด์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋ ๋ชจ๋ ํด๋์ค๋ค์ด ํด๋น ๋ฉ์๋๋ฅผ ๊ตฌํํด์ผ ํ๋ ๋ถํธํจ(?) ์ ํด์์์ผฐ๋ค.
๊ฐ๋จํ ๊ธฐ๋ฅ์ ๊ฐ์ง๋ ์ธํฐํ์ด์ค๋ฅผ ํตํ์ฌ ์ ํธ๋ฆฌํฐ์ฑ ์ธํฐํ์ด์ค๋ฅผ ๋ง๋ค๋ฉฐ ํ์ฅ ๊ฐ๋ฅํ๊ฒ๋ ํ๋ค.
public interface Calculator {
public int plus(int i, int j);
public int multiple(int i, int j);
default int exec(int i, int j) {
return i + j;
}
}
์์ ๊ฐ์ด ์ธํฐํ์ด์ค์์๋ ๋ฉ์๋ ๊ตฌํ๊ฐ๋ฅ
Stream API
์คํธ๋ฆผ API ์ ์ถ๊ฐ๋ฅผ ํตํ์ฌ ๋ฐ์ดํฐ์ ์ถ์ํ๊ฐ ๊ฐ๋ฅํ๋ค.
๊ธฐ์กด JCF (Java Collection Framework) ๋ฅผ ์ ๊ทผํ๊ธฐ ์ํด Iterator
์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ์์ฑํ์์ง๋ง Stream ์ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ถ์ํํ์ฌ ๋ค๋ฃฌ๋ค.
java.time
ํจํค์ง ์ถ๊ฐ
JDK 1.0 ~ 1.1 ๋ถํฐ ์ ๊ณต๋ Date
ํด๋์ค ํน์ Calendar
ํด๋์ค๋ฅผ ์ฌ์ฉํ์๋ค.
Java SE 8
์์๋ Joda-Time
์ ์ด์ฉํ ์๋ก์ด ๋ ์ง์ ์๊ฐ API ๋ฅผ ํตํ์ฌ ๊ฐ์ ๋ ์๊ฐ ํจํค์ง ํด๋์ค ์ด์ฉ์ด ๊ฐ๋ฅํ๋ค.
์ฐธ๊ณ ์๋ฃ
PermGem ์์ญ ์ญ์
Annotation Type ์ถ๊ฐ
Nashorn
์๋ก์ด ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ก๊ทธ๋๋ฐ ์์ง์ผ๋ก ๊ธฐ์กด์ ์ฌ์ฉ์ค์ธ ๋ชจ์ง๋ผ์ Rhino ์์ง๋ณด๋ค ๊ฐ์ ๋ ์ฑ๋ฅ ํฅ์์ ๋ณด์ฌ์ค๋ค.
๋ง์ง๋ง 32 bit ์ง์
์ดํ ๋ฒ์ ์ 32 bit ๋ฒ์ ์ ์๋ํํฐ๋ก๋ง ์ง์ ๊ฐ๋ฅ
17.9.21 ~ 18.1.16
Java SE 9 ์์ ์ถ๊ฐprivate
์ธํฐํ์ด์ค ๋ฉ์๋ ์ถ๊ฐ
@Deprecate
API ์ ์ญ์
์ด์ ๋ฒ์ ์ ์ด์ ๋ฒ์ ์ @Deprecate ๊ฐ ๋ฆด๋ฆฌ์ฆ๋ง๋ค ์ผ๋ถ ์ญ์ ๋์์ผ๋ฉฐ ๋ฐํ์์ ๋ชจ๋ํ๋ ํ์ ํธํ์ฑ์ ์ด๋์ ๋ ํฌ๊ธฐํ๊ณ ์ฑ๋ฅ์ ๊ฐ์ ํ ๋ฒ์ ์ด๊ธฐ ๋๋ฌธ์ ํ์ํธํ์ฑ์ ์๊ฐํ๋ค๋ฉด ๊ณ ๋ คํด๋ด์ผ ํ๋ค.
Property ์ธ์ฝ๋ฉ ์ง์
UTF-8
์ธ์ฝ๋ฉ์ด ์ง์๋๋ค.
18.3.20 ~ 18.7.17
Java SE 10 ์์ ์ถ๊ฐvar
ํค์๋๋ฅผ ํตํ ์ง์ญ ๋ณ์ ํ์
์ถ๋ก
๋ณ๋ ฌ ์ฒ๋ฆฌ ๊ฐ๋น์ง ์ปฌ๋ ์
Stop-The-World
Root CA
JVM ์ Heap ์์ญ์ ์์คํ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์๋ ๋ค๋ฅธ ์ข ๋ฅ์ ๋ฉ๋ชจ๋ฆฌ์๋ ํ ๋นํ ์ ์๊ฒ ์ง์
JIT ์ปดํ์ผ๋ฌ ์ถ๊ฐ
@Deprecate
API ๋ ์์ ์ญ์
์ด์ ๋ฒ์ ์ Java SE 11 ์์ ์ถ๊ฐ
Nest ๊ธฐ๋ฐ ์ ๊ทผ ์ธ์ด
Nest-based access controls
์ Nest ๋ ์ ๊ทผ ์ ์ด ์ปจํ
์คํธ๋ก ๋
ผ๋ฆฌ์ ์ผ๋ก๋ ๊ฐ์ ํด๋์ค๋ฅผ ๋ถ๋ฆฌ๋ ํด๋์ค๋ก ์ปดํ์ผํ ์ ์๊ฒ ํด์ค๋ค.
๋ค๋ฅธ ํด๋์ค์ private ๋ฉค๋ฒ์ getter/setter ์์ด ๋ฐ๋ก ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
์๋ก์ด ๊ฐ๋น์ง ์ปฌ๋ ํฐ
์ฑ๋ฅ์ ํฅ์์ํจ ์๋ก์ด ๊ฐ๋น์ง ์ปฌ๋ ํฐ (Garbage Collector)
Flight Recorder
์ค๋ฒํค๋๊ฐ ๋ฎ์ ๋ฐ์ดํฐ ์์ง ํ๋ ์์ํฌ์ด๋ค. ์ด์ ์๋ ์ ๋ฃ์์ง๋ง ์คํ์์ค๋ก ๊ณต๊ฐ
TLS 1.3
Transport Layer Security (TLS) 1.3 TLS SSL ์ ํ์ค ์ด๋ฆ
๋๋ค์์ var ๋ณ์
Java SE 10 ์์ ๋์
๋ var
ํ์
์ถ๋ก ์ ์
๋ฐ์ดํธ
์ด์ธ ๋ค๋ฅธ ๊ธฐ๋ฅ์ ์ ๊ฑฐ
- Java EE and CORBA Modules
- Web Start
- Applets
- Java FX
โ Refactoring Lamda โ