Top

The Java Language Specification, Third Edition (한국어판)

  • 원서명The Java™ Language Specification, Third Edition (ISBN 9780321246783)
  • 지은이James Gosling, Bill Joy, Guy Steele, Gilad Bracha
  • 옮긴이허진영, 최선재, 이상민, 이정룡
  • 감수자김형준
  • ISBN : 9788960770072
  • 36,000원
  • 2008년 01월 02일 펴냄 (절판)
  • 페이퍼백 | 704쪽 | 188*255mm

판매처

  • 현재 이 도서는 구매할 수 없습니다.

책 소개

『The Java™ Language Specification, Third Edition』은 자바 언어를 만든 사람들이 직접 작성했으며, 자바 프로그래밍 언어의 기술 참고서적의 결정판이다.
언어 구조에 대한 정확한 의미를 알고자 하는 독자라면 이 책은 분명 훌륭한 지침서가 될 것이다.
이 책은 자바 프로그래밍 언어에 대한 완벽하고 정확하며 상세한 설명을 제공한다. 또한 2판 이후 새롭게 추가된 기능인 제네릭, 어노테이션, 단언문, 박싱/언박싱, 열거형, for-each 구문, 가변 길이 매개변수를 포함하는 메소드, 정적 임포트 등에 대한 완벽한 설명을 제공한다.


[ 책 소개 ]

자바 프로그래밍 언어는 범용적이고 병렬 수행이 가능한 클래스 기반의 객체지향 언어로, 많은 프로그래머들이 언어를 능숙하게 다룰 수 있도록 매우 단순하게 설계되었다. 자바 프로그래밍 언어는 C나 C++와 관련이 있지만 다소 다르게 체계화되었다. C와 C++의 일부 요소는 제외되었고, 다른 언어의 사상도 일부 포함되었다. 자바는 연구용 언어가 아니고 상용 언어이다. 호어(C. A. R. Hoare)가 발표한 언어 설계에 대한 논문을 토대로 최신 기술이나 검증되지 않은 부분은 배제했다.

자바 프로그래밍 언어는 타입에 대한 규칙이 엄격하다. 따라서 컴파일 시 에러(컴파일할 때 확인할 수 있으며 반드시 검증해야 하는 에러)와 실행 시 발생하는 에러를 확실히 구분한다. 컴파일은 프로그램을 CPU와 같은 하드웨어 아키텍처에 독립적인 바이트 코드 형태로 번역하는 작업을 의미한다. 실행은 프로그램을 수행하기 위해서 필요한 클래스를 로딩하고 링크하며, 선택적으로 기계어를 생성하고 동적으로 프로그램을 최적화하고, 프로그램을 수행하는 작업을 의미한다.

자바 프로그래밍 언어는 기계 표현의 세부 내용이 드러나지 않는 고급 언어이다. 명시적인 메모리 해제(C의 free나 C++의 delete와 같은) 작업 시 일어날 수 있는 문제를 피하기 위해서 가비지 콜렉터(GC, Garbage Collector)라는 자동 메모리 관리 기능을 사용한다. 실행 시 멈추는 현상을 최소화 하도록 고성능 가비지 콜렉터를 구현하여 시스템 프로그래밍과 실시간 응용 프로그램을 지원할 수 있다. 자바는 프로그램이 지정되지 않은 방식으로 수행되는 것을 방지하는 구조이다. 예를 들면 인덱스 점검을 하지 않고 배열에 접근하는 작업은 불가능하다.

자바 프로그래밍 언어는 일반적으로 바이트 코드 명령어 집합과 바이너리 형식으로 컴파일 된다. 이에 대한 내용은 『The Java™ Virtual Machine Specification, Second Edition』 (Addison-Wesley, 1999)에 잘 정리되어 있다.


[ 이 책의 구성 ]

2장에서는 자바의 어휘 및 구문 문법을 표현하기 위한 표기법(notation)에 대해서 설명한다.
3장에서는 C와 C++에 기반을 둔 자바 언어의 어휘 구조에 대해서 설명한다.
4장에서는 타입, 값, 변수에 대해서 설명한다.
5장에서는 형변환 및 수치 확장에 대해서 설명한다.
6장에서는 선언과 명명규칙, 의미 있는 이름을 정하는 방법에 대해서 설명한다.
7장에서는 패키지로 구성되는 프로그램의 구조에 대해 설명한다.
8장에서는 클래스에 대해서 알아본다.
9장에서는 인터페이스 타입에 대해서 알아본다.
10장에서는 배열에 대해 설명한다.
11장에서는 예외에 대해서 다룬다.
12장에서는 프로그램 수행 시 일어나는 동작에 대해서 알아본다.
13장에서는 바이너리 호환성에 대해서 알아본다.
14장에는 C와 C++에 기반을 둔 블록과 문장에 대해서 알아본다.
15장에서는 표현식에 대해 알아본다.
16장에서는 자바 언어에서 지역변수가 사용되기 전에 초기화 되어야 하는 것을 보장하는 방법에 대해서 자세히 다룬다.
17장에서는 Mesa라는 모니터 기반 병행처리 프로그래밍 언어에 기초한 스레드(thread)와 잠금(lock)에 대해서 알아본다.
18장에서는 구문 문법을 정리한다.