자바언어의 특징
Architecture/Platform independence
“Write once, run anywhere”
Bytecode level의 독립성
c.f. source level independence, binary compatibility
JVM(Java Virtual Machine)이 이식된 모든 플랫폼에서 수행 가능
Platform independent data type definition
“Write once, run anywhere”
Bytecode level의 독립성
c.f. source level independence, binary compatibility
JVM(Java Virtual Machine)이 이식된 모든 플랫폼에서 수행 가능
Platform independent data type definition
Object-oriented
class hierarchy, inheritance, encapsulation 등 지원
single inheritance만 지원
다중 상속 효과를 위한 interface
statically typed
객체 사용이전에 반드시 선언
Compile & interpret language
실행 화일의 생성 - compile, 실행 - interpret
compile 언어보다 범용이고 interpret 언어보다 효율적
단순성, 효율성
C/C++과 비슷 : 기존 언어에 친숙한 프로그래머가 배우기 쉬움
혼란한 개념의 배제
자동적인 타입 캐스팅, 헤더파일, 전처리기, 포인터 연산, 암시적 형변환(implicit type conversion), struct, union
템플리트(templates), 다중 상속 , 연산자 재정의
유용한 개념의 도입
garbage collection, multithreading, standard package
안정성, 신뢰성
strong typed - type checking in compiling, run-time
no pointers - use only reference type for objects
exception handling
memory leakage 방지
Security
no pointers - Java program은 시스템을 crash시킬 수 없다.
실행하기 전에 code verify(Byte Code Verifier)
security manager for applets
Extensibility
기존 binary class를 그대로 두고 새로운 기능을 추가
호환성 유지
MultiThreaded
상호 작용과 실시간성이 증가
Synchronized Mwthod를 지원하므로 쓰레드간의 동기화 문제를 해결한다.
자바 API에서는 쓰레드를 지원하기 위한 Therad Class가 존재
오라클자바커뮤니티 실전 개발 강좌 - 개인80%환급
댓글 없음:
댓글 쓰기