JAVA 는 객체 지향언어로써 C, C++을 기반으로 탄생 하였지만 프로그램에 혼란을 주는 요소를 제거 하였다. 객체지향 언어로 소프트웨어의 재사용과 정보의 캡슐화 등을 제공 분산환경에 적합하며, http, ftp, tcp/ip 프로토콜 등과 연결된 라이브러리, 그리고 다른 컴퓨터에 있는 원격 객체들을 호출할 수 있는 RMI 기능을 제공한다.
1) Compiled interpreted language
프로그램 작성(*.java) -(컴파일)-> *.class(바이트코드) -(인터프리터)->실행
프로그램 작성 후 컴파일을 통해 바이트코드로 바뀐 class파일은 어떤 실행환경에서라도 실행이 가능하다.
2)견고성(Robust)
· 포인터를 삭제
· Garbage Collection 삽입
· 객체타입을 미리검사
· Runtime Error Processing(실행시간 에러 처리)
3)안전성(Secure)
· 분산환경에서 실행될 수 있도록 개발환경과 실행환경으로 분리 JVM에서 무결성을 필수 검사 한다.
· *.java -> *.class -> 클래스 로더(자바 클래스 라이브러리 검사)
4)구조에 중립적이고 이식성(Portable)이 높다
· JVM(자바가상머신)에서 실행되는 바이트 코드를 이용하여 특정컴퓨터에 종속되지 않는다.
· 한번 작성되면 JVM이 설치된 모든 컴퓨터에서 실행할 수 있다.
· 시스템 종속적 부분까지 구조중립적으로 설계 되었다.
5)높은성능
· 실행의 효율성을 제공하기 위해 JIT 컴파일러를 제공
(JIT : class 파일을 생성하지않고 exe파일로 컴파일)
· 자바 번역기는 바이트코드 생성시 자동 레지스터 할당 및 최적화를 수행하여 효율적인 바이트 코드를 생성한다.
6)Multithread
· 동시 수행작업을 기술한다
7)동적(Dynamic)
· 기존의 프로그램에 영향을 주지않고 새로운 메소드나 속성을 추가할 수 있다.
· 라이브러리와의 연결을 실행시간에 수행.(실행시간이전 수정가능)
'프로그래밍 > JAVA,JSP' 카테고리의 다른 글
JSP - JSP의 구성요소 (0) | 2009.12.03 |
---|---|
Java - 객체 지향의 개요 (0) | 2009.12.03 |
Java - 클래스 (0) | 2009.12.03 |
Java - 멤버 변수와 접근 지정자 (0) | 2009.12.03 |
Java - 메소드 (0) | 2009.12.03 |