본문 바로가기

JAVA - 특징

JAVA가 무엇이냐

1991년 Green project라는 이름으로 시작. 가정용 전자기기에 사용되는 컴퓨터 언어 디자인함.
     특정 디바이스에 종속되지 않고, 작고 견고해야 한다. 그래서 가상머신에서 동작하는 중간코드 생성

1992년 : 자바는 c++ 기반이었지만, 완벽한 객체지향 언어인 oak로 만들어짐. oak는 나중에 java로 이름 바뀜
1994년 자바를 기반으로 한 웹 브라우저 제작. 나중에 hotjava로 발전함. applet이라고 불리는 자바의 기능을 보여주기 위해 브라우저가 중간코드 해석함.

1996년 많은 업체에서 자바 지원함

 


JAVA의 특징

1. 자바는 단순하다, c와 c++보다 쉽다. 가비지 컬렉터에 의해 자동 메모리 관리.

2. 객체지향적이다. 객체지향이 적용된 c++ 기초로 만들어졌다.
     객체지향하면 재사용성 높고, 클래스 라이브러리 API제공
3. 분산처리에 용이하다. TCP/IP프로토콜을 통해 효율적으로 실행. 네트워크 기능 내장. 프로토콜 라이브러리 제공
   원격 메소드 호출 라이브러리 제공. ( 서로 다른 컴퓨터상의 객체도 원격으로 호출하여 실행 )

4. 인터프리터에 의해 실행. 
 자바 소스코드 (.java) -> 컴파일 -> .class (중간코드 = 바이트코드 = 클래스파일) 로 변환. 
  바이트코드는 인터프리터로 기계어로 해석되어 실행된다.

5. 견고하다. 에러 원인 제거하거나 자동 해결
  가비지 컬렉션으로 메모리 관리, 데이터 타입 검사, 포인터 없음. 에러 처리

6. 안전: 데이터타입 엄격하게 검사
 바이트코드는 클래스로더에 적재되어 코드 분리. 그리고 바이트 코드 검증을 하고 인터프리터를 통해 실행

7. 플랫폼 독립적.
바이트코드를 가상머신에서 실행시켜, 운영체제나 하드웨어 상관없이 실행 가능

8. 높은 성능 제공
가비지 컬렉션 기능을 통해 참조되지 않는 객체의 메모리 해제

9. 멀티 스레드 지원
스레드 : 독자적으로 수행하는 작은 프로그램
즉, 하나의 CPU가 여러개의 프로그램 동시 수행 가능

10. 동적언어
기존 프로그램 영향 주지 않고, 라이브러리에 새로운 메소드나 속성 추가 가능
라이브러리 연결을 실행 도중에 수행.

 

 

자바언어의특징 = 객체지향적, 분산처리용이, 단순. 수행속도 빠름


자바의 활용

애플리케이션 : 자바로 작성시 성능상의 악점이 있지만, 간단한 프로그램은 자바로 충분히 만들 수 있다.

애플릿: 웹 브라우저에서 동작하는 작은 프로그램이다. 속도가 빠른 것이 특징이다.

웹 애플리케이션 : 생산성이 높다. JSP와 서블릿과 함께 사용 가능한 자바 프레임워크가 많다.

모바일 앱 : 안드로이드의 주 언어가 자바로 채택되었다.

'JAVA > JAVA' 카테고리의 다른 글

Synchronized (동기화) in Java  (0) 2024.01.14
Garbage Collection - 가비지 컬렉션  (0) 2022.06.23
Java Virtual Machine (JVM) & 자바 컴파일  (0) 2022.06.23
객체지향 & 절차지향 언어  (0) 2022.06.22