# Java 유래
- 1991년 제임스 고슬링(James Gosling)과 Sun Microsystems 연구팀에 의해 만들어진 Programming 언어.
- 가정용 전자제품에 사용하기 위한 언어로 개발
- CPU에 의존하지 않도록 가상 기계(Virtual Machine) 개념 도입
- 웹 프로그램 개발에 많이 사용되고 있는 언어
# Java Platform
프로그램이 실행되는 하드웨어나 소프트웨어 환경
- 자바 가상 기계(JVM, Java Virtual Machine)과 응용 프로그래밍 인터페이스(API, Application Programming Interface)로 구성
# Java 특징
- Simple
- Object Oriented
- High Performance : JIT(Just-in-time) Compiler 개념 도입
- Robust
- Secure
- Architecture neutral : JVM에 의해 실행, 컴퓨터 구조에 중립적인 바이트 코드 생성
- Portable : H/W, OS 등 컴퓨터 구조에 독립적, 이식성 보장
- Interpreted
- Multithreaded : 멀티스레딩(Multithreading) 지원
- Dynamic :
- Distributed : 프로토콜 관련 라이브러리 내장, 네트워크 관련 프로그래밍 가능
# Java Edition
Java SE(Standart Edition)
- 데스크탑, 서버에서 자바 애플리케이션 개발
- 임베디드 환경과 실시간 환경 지원
Java EE(Enterprise Edition)
- 기업용 애플리케이션 개발
- 웹서버, J2EE API, JavaBeans, 서블릿 API, JSP 등 지원
Java ME(Micro Edition)
- 모바일 또는 임베디드 장치에서 실행되는 애플리케이션 개발
- 유연한 사용자 인터페이스, 보안, 네트워크 프로토콜 지원
# Java Version
- 1.0 : 1996.01 릴리즈, 애플릿
- 1.1 : 1997.02 릴리즈, AWT Event, Inner Class, Beans, JDBC, RMI
- 1.2 : 1998.12 릴리즈, Reflection, Collection, Swing(GUI), Java IDL
- 1.3 : 2000.05 릴리즈, HotSpot JVM, JavaSound, JNDI(Java Naming and Directory Interface), JPDA(Java 플랫폼 디버거 아키텍처)
- 1.4 : 2002.02 릴리즈, Regular Expression, XML Parser, Java Web Start, IPv6, Logging API
- 1.5 : 2004.09 릴리즈, Generic, for-each, auto-boxing, Metadata
- 1.6 : 2006.12 릴리즈, v1.5 성능 향상, 라이브러리 보강
- 1.7 : 2011.07 릴리즈, 다국어 JVM, 소켓 직접 프로토콜,
- 1.8 : 2014.03 릴리즈, Lambda, Project Nashorn,
'Language > JAVA' 카테고리의 다른 글
‘==’ vs equals() vs hashcode() (0) | 2022.05.27 |
---|---|
[JAVA] UUID (0) | 2022.05.25 |
Scanner vs BufferedReader (0) | 2022.05.11 |