개발자 μ •λ¦¬λ…ΈνŠΈ/JAVA

[개발자 λ©΄μ ‘ 질문] Java 버전별 νŠΉμ§• 정리

νŒμ½” 2022. 12. 31. 18:14

 

λ©΄μ ‘μ—μ„œ 본인이 μ‚¬μš©ν•œ μžλ°”μ˜ 버전과 νŠΉμ§• μ •λ„λŠ” 기본적으둜 말 할쀄 μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€.
Java 버전 별 νŠΉμ§•μ„ μ•Œμ•„λ΄…μ‹œλ‹€.

 


JavaλŠ” 1995년에 처음 μΆœμ‹œλœ 이후 μ—¬λŸ¬ 버전을 μΆœμ‹œν–ˆμŠ΅λ‹ˆλ‹€.

λ‹€μŒμ€ 일뢀 μ£Όμš” λ²„μ „μ˜ μ£Όμš” κΈ°λŠ₯μž…λ‹ˆλ‹€.

 

Java 1.0(1996): JDK(Java Development Kit)와 Java μ–Έμ–΄ 자체λ₯Ό λ„μž…ν•œ Java의 첫 번째 λ²„μ „μž…λ‹ˆλ‹€.

Java 1.1(1997): 이벀트 처리, μƒˆλ‘œμš΄ AWT(Abstract Window Toolkit) ꡬ성 μš”μ†Œ 및 μƒˆλ‘œμš΄ Java μ–Έμ–΄ κΈ°λŠ₯을 μΆ”κ°€ν•œ 첫 번째 μ£Όμš” μ—…λ°μ΄νŠΈμž…λ‹ˆλ‹€.

Java 1.2(1998): 이 μ—…λ°μ΄νŠΈλŠ” μƒˆλ‘œμš΄ Java Virtual Machine(JVM)κ³Ό Java Collection Frameworkλ₯Ό λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. 이 버전뢀터 μžλ°”λŠ” "Java 2"둜 μ•Œλ €μ‘ŒμŠ΅λ‹ˆλ‹€.

Java 1.3(2000): 이 λ²„μ „μ—λŠ” μƒˆλ‘œμš΄ μž…μΆœλ ₯(I/O) κΈ°λŠ₯κ³Ό μƒˆλ‘œμš΄ Java μ–Έμ–΄ κΈ°λŠ₯이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 1.4(2002): 이 λ²„μ „μ—λŠ” assert ν‚€μ›Œλ“œ, μƒˆλ‘œμš΄ I/O μ‹œμŠ€ν…œ 및 Logging APIκ°€ λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 5(2004): 이 버전은 κ°œλ°œμžκ°€ μœ ν˜• μ•ˆμ „ μ»¬λ ‰μ…˜μ„ λ§Œλ“€ 수 μžˆλŠ” μ œλ„€λ¦­ κΈ°λŠ₯κ³Ό μƒˆλ‘œμš΄ "각각을 μœ„ν•œ" 루프λ₯Ό λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. μžλ°” μ½”λ“œμ— μΆ”κ°€ν•  수 μžˆλŠ” 메타데이터인 주석을 λ§Œλ“œλŠ” κΈ°λŠ₯도 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

Java 6(2006): 이 λ²„μ „μ—λŠ” JavaScript와 같은 슀크립트 언어에 λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμœΌλ©° μ„±λŠ₯이 ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 7(2011): 이 λ²„μ „μ—λŠ” λ¦¬μ†ŒμŠ€λ₯Ό 더 μ‰½κ²Œ 관리할 수 μžˆλŠ” "λ¦¬μ†ŒμŠ€ μ‚¬μš© μ‹œλ„" λ¬Έκ³Ό λ¬Έμžμ—΄μ— λŒ€ν•œ "μ „ν™˜" 문이 λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 8(2014): 이 버전은 κ°œλ°œμžκ°€ 읡λͺ… ν•¨μˆ˜λ₯Ό λ§Œλ“€ 수 μžˆλŠ” λžŒλ‹€ ν‘œν˜„μ‹κ³Ό 데이터 μˆ˜μ§‘μ— λŒ€ν•œ μž‘μ—…μ„ 더 μ‰½κ²Œ μˆ˜ν–‰ν•  수 μžˆλŠ” 슀트림 APIλ₯Ό λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€.

Java 9(2017): 이 버전은 Java ν”Œλž«νΌμ„ λͺ¨λ“ˆν™”ν•˜λŠ” Java Platform Module System(JPMS)을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ κ°œλ°œμžκ°€ μžλ°” μ½”λ“œλ₯Ό λŒ€ν™”ν˜•μœΌλ‘œ μ‹€ν–‰ν•  수 μžˆλŠ” μžλ°” 셸을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

Java 10(2018): 이 버전은 κ°œλ°œμžκ°€ λ³€μˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ μœ ν˜• 좔둠을 μ‚¬μš©ν•  수 μžˆλŠ” "var" ν‚€μ›Œλ“œλ₯Ό λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ κ°œλ°œμžκ°€ 둜컬 λ³€μˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ μœ ν˜• 좔둠을 μ‚¬μš©ν•  수 μžˆλŠ” "둜컬 λ³€μˆ˜ μœ ν˜• μΆ”λ‘ " κΈ°λŠ₯을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

Java 11(2018): 이 버전은 HTTP μš”μ²­μ„ 더 μ‰½κ²Œ 보낼 수 μžˆλŠ” "κ²½λŸ‰" HTTP ν΄λΌμ΄μ–ΈνŠΈμ™€ κ°œλ°œμžκ°€ λžŒλ‹€ 맀개 λ³€μˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ "var" ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•  수 μžˆλŠ” "λžŒλ‹€ 맀개 λ³€μˆ˜μ— λŒ€ν•œ 둜컬 λ³€μˆ˜ ꡬ문" κΈ°λŠ₯을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ Java Web Start κΈ°λŠ₯도 μ œκ±°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 12(2019): 이 버전은 κ°œλ°œμžκ°€ "μŠ€μœ„μΉ˜" 문을 ν‘œν˜„μ‹μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλŠ” "μŠ€μœ„μΉ˜ ν‘œν˜„μ‹" κΈ°λŠ₯을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ κ°œλ°œμžκ°€ JVM이 μ‚¬μš©ν•΄μ•Ό ν•˜λŠ” λ©”λͺ¨λ¦¬ 양을 μ§€μ •ν•  수 μžˆλŠ” "JEP 323" κΈ°λŠ₯도 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 13(2019): 이 버전은 μ—¬λŸ¬ μ€„μ˜ λ¬Έμžμ—΄μ„ 더 μ‰½κ²Œ μž‘μ„±ν•  수 μžˆλŠ” "ν…μŠ€νŠΈ 블둝" κΈ°λŠ₯κ³Ό κ°œλ°œμžκ°€ "μŠ€μœ„μΉ˜" 문을 ν‘œν˜„μ‹μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλŠ” "μŠ€μœ„μΉ˜ ν‘œν˜„μ‹" κΈ°λŠ₯을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ JVM의 μ„±λŠ₯을 ν–₯μƒμ‹œν‚€λŠ” "JEP 345" κΈ°λŠ₯도 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 14(2020): 이 버전은 κ°œλ°œμžκ°€ νŒ¨ν„΄μ„ μ‚¬μš©ν•˜μ—¬ κ°μ²΄μ—μ„œ 데이터λ₯Ό μΆ”μΆœν•  수 μžˆλŠ” "νŒ¨ν„΄ λ§€μΉ­" κΈ°λŠ₯을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. κ°„λ‹¨ν•œ 데이터 클래슀λ₯Ό μ‰½κ²Œ λ§Œλ“€ 수 μžˆλŠ” "λ ˆμ½”λ“œ" κΈ°λŠ₯κ³Ό JVM의 μ„±λŠ₯을 ν–₯μƒμ‹œν‚€λŠ” "JEP 361" κΈ°λŠ₯도 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Java 15(2020): 이 버전은 κ°œλ°œμžκ°€ νŠΉμ • 클래슀λ₯Ό ν™•μž₯ν•  수 μžˆλŠ” 클래슀λ₯Ό μ§€μ •ν•  수 μžˆλŠ” "μ”°λ“œ 클래슀" κΈ°λŠ₯κ³Ό κ°œλ°œμžκ°€ ν΄λž˜μŠ€μ— ν‘œμ‹œλ˜μ§€ μ•ŠλŠ” 클래슀λ₯Ό λ§Œλ“€ 수 μžˆλŠ” "νžˆλ“  클래슀" κΈ°λŠ₯을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€.


πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡

https://kfintech.tistory.com/42

 

[개발자 λ©΄μ ‘ 질문] Java의 νŠΉμ§• 정리

Java의 νŠΉμ§•μ„ μ„€λͺ…ν•˜μ„Έμš”. μžλ°”(Java)λŠ” κ°œλ°œμžλ“€ μ‚¬μ΄μ—μ„œ 인기λ₯Ό 끌 수 μžˆλŠ” μˆ˜λ§Žμ€ μ£Όμš” κΈ°λŠ₯을 κ°–μΆ˜ κ³ κΈ‰ 객체 μ§€ν–₯ ν”„λ‘œκ·Έλž˜λ° 언어이닀. -객체 μ§€ν–₯: μžλ°”λŠ” 객체 μ§€ν–₯ μ–Έμ–΄λ‘œ, 데이터와 μ½”

kfintech.tistory.com