자바 7의 새로운 기능 [100가지가 넘는 예제로 살펴보는]
- 원서명Java 7 New Features Cookbook (ISBN 9781849685627)
- 지은이리차드 리스, 제니퍼 리스
- 옮긴이남기혁
- ISBN : 9788960775077
- 30,000원
- 2013년 12월 30일 펴냄 (절판)
- 페이퍼백 | 444쪽 | 188*235mm
- 시리즈 : acorn+PACKT
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
Try-with-resource 구문, 향상된 예외 처리 기능, 디렉토리 이벤트 모니터링, 비동기 IO와 GUI 관련 개선된 기능을 비롯한, 자바 7에서 새로 추가된 여러 가지 기능을 100가지가 넘는 많은 예제와 함께 중점적으로 소개한다. 각 기능에 대해 별도 장을 할애해 코드 예제와 함께 직접 실습할 수 있도록 구성되어 있다.
이 책에서 다루는 내용
■ 향상된 예외 처리와 리터럴 사용 등과 같은 자바 언어의 개선된 기능과 사용법
■ Path 클래스로 파일 속성이나 심볼릭 링크 같은 특수 파일을 효과적으로 다루는 방법
■ 파일 시스템 탐색과 파일 및 디렉토리 모니터링 방법
■ 비동기 IO 처리 방법
■ 향상된 윈도우 관련 메소드, JLayer 클래스, 다양한 다이얼로그 박스 관련 메소드 같은 GUI 개선 기능과 사용법
■ 새로운 RowSet 인터페이스와 데이터베이스 스키마 다루기
■ 운영체제의 프로세스를 다루고 SSL 관련 개선 기능
이 책의 대상 독자
이 책은 특히 자바 7에서 새로 도입된 기능을 재빨리 파악해 현업에 적용하려는 자바 개발자를 대상으로 집필했다.
이 책의 구성
1장. 자바 언어에 새로 추가된 기능 코인 프로젝트(Project Coin)에서 진행된 언어와 관련된 여러 가지 개선 사항을 다룬다. 자바 언어와 관련하여 리터럴에 언더스코어를 쓸 수 있게 된 것 같은 간단한 기능부터, 스위치 구문에서 스트링을 사용하는 기능에 이르기까지 다양한 부분이 개선됐다. 그 중에서도 try-with-resource 구문과 다이아몬드 연산자가 추가된 점은 가장 큰 변화로 손꼽을 수 있다.
2장. Path 오브젝트로 파일과 디렉토리의 경로 표현하기 Path 클래스에 대해 자세히 소개한다. 이 클래스는 자바 7에 새로 추가된 파일 관련 기능을 소개하는 다른 장에서도 자주 사용된다.
3장. 파일과 디렉토리 정보 알아내기 애플리케이션을 작성하다 보면 파일이나 디렉토리 정보를 가져와야 하는 경우가 많다. 이처럼 파일 속성이나 POSIX 속성, 파일의 접근 권한 리스트 등과 같은 파일 관련 정보를 가져오는 방법에 대해 설명한다.
4장. 파일과 디렉토리 다루기 파일을 생성하거나 삭제하는 등 파일과 디렉토리를 다루는 데 필요한 기본 원리를 소개한다. 또한 임시 파일을 사용하고, 심볼릭 링크를 관리하는 방법도 함께 설명한다.
5장. 파일시스템 다루기 파일 스토어 정보를 알아내거나, 파일 구조를 탐색하는 데 필요한 클래스나 파일시스템 오브젝트를 가져오는 방법을 살펴보고, 특정한 파일이나 디렉토리에 대해 발생하는 이벤트를 모니터링하거나, ZIP 파일 시스템을 다루는 방법 등을 소개한다.
6장. 스트림 IO NIO2에 대해 설명한다. 비동기 IO를 수행하기 위한 새로운 기법과, 랜덤 액세스 IO를 수행하는 방법, 그리고 보안 디렉토리 스트림을 사용하는 방법 등에 대해 자세히 설명한다.
7장. 향상된 GUI 자바 7에서는 GUI와 관련된 여러 가지 기능이 개선됐다. 자바 7부터는 다양한 모양을 가지거나, 투명한 윈도우를 생성할 수 있다. 뿐만 아니라 윈도우에 오버레이 그래픽을 적용하는 데 필요한 JLayer 데코레이터 관련 개선 사항도 자세히 다룬다.
8장. 이벤트 처리 다양한 애플리케이션 이벤트를 다루기 위해 새로 추가된 메소드에 대해 살펴본다. 자바 7부터는 부가적인 마우스 버튼과 휠을 지원하는 기능이 추가됐다. 윈도우의 포커스를 제어하는 기능도 향상되고, 모달 대화창을 흉내내는 데 사용되는 세컨더리 루프에 대해서도 소개한다.
9장. 데이터베이스, 보안, 시스템 관련 향상된 기능 RowSetFactory 클래스와 같이 데이터베이스와 관련해 새로 추가된 기능과 보안을 위해 SSL과 관련해 새로 추가된 기능을 소개한다. 또한 MXBeans와 같이 시스템과 관련된 추가 기능도 함께 설명한다.
10장. 동시성 처리 스레드와 관련해 추가된 fork/join 관련 클래스와 페이저 모델, 개선된 디큐 클래스 등에 대해 소개한다. 또한 랜덤 숫자를 생성하기 위해 새로 추가된 ThreadLocalRandom 클래스도 소개한다.
11장. 여러 가지 개선 사항 달력이나 통화 단위와 관련해 개선된 기능을 예제를 통해 살펴본다. 이와 함께 자바 7에서 개선된 널 레퍼런스를 다루는 기능에 대해서도 알아본다.
목차
목차
- 1장 자바 언어에 새로 추가된 기능
- 들어가며
- switch 문에서 스트링 리터럴 사용하기
- 리터럴에 언더스코어를 사용하여 코드의 가독성 높이기
- try-with-resources 구문으로 깔끔하게 예외 처리하는 방법
- try-with-resources 구문에 사용할 리소스 생성하기
- 여러 종류의 예외를 한 구문에서 처리하기
- 자바 7부터 추가된 예외 re-throw 기능
- 다이아몬드 연산자를 이용한 생성자 타입 추론
- @SafeVarags 애노테이션 사용법
- 2장 Path 오브젝트로 파일과 디렉토리의 경로 표현하기
- 들어가며
- Path 오브젝트 만들기
- java.io.File과 java.nio.file.Files의 연동 방법
- 상대 경로를 절대 경로로 바꾸기
- 정규화를 통한 경로의 군더더기 제거하기
- 여러 경로를 하나로 합치기
- 상대 경로 만들기
- 경로 타입 변환하기
- 경로의 동치 여부 확인하기
- 심볼릭 링크 다루기
- 3장 파일과 디렉토리 정보 알아내기
- 들어가며
- 파일 콘텐트 타입 확인하기
- getAttribute 메소드로 어트리뷰트를 한 번에 하나씩 가져오기
- 파일 어트리뷰트에 대한 맵 구하기
- 파일과 디렉토리 정보 구하기
- OS에서 지원하는 어트리뷰트 뷰
- 클래스 인자를 지정하여 supportsFileAttributeView 메소드 호출하기
- 스트링 인자를 지정하여 supportsFileAttributeView 메소드 호출하기
- BasicFileAttributeView로 파일의 기본 속성 구하기
- PosixFileAttributeView로 POSIX 파일 속성 구하기
- DosFileAttributeView로 FAT 테이블 속성 구하기
- FileOwnerAttributeView로 파일 소유권 정보 구하기
- AclFileAttributeView로 파일의 ACL 정보 구하기
- UserDefinedFileAttributeView로 사용자 정의 파일 속성 다루기
- 4장 파일과 디렉토리 다루기
- 들어가며
- 파일이나 디렉토리 생성하기
- 파일 복사하기
- 임시 파일/디렉토리 다루기
- 파일이나 디렉토리의 시간 관련 속성 설정하기
- 파일 소유권 다루기
- ACL 파일 접근권한 다루기
- POSIX 속성 다루기
- 파일이나 디렉토리 옮기기
- 파일이나 디렉토리 삭제하기
- 심볼릭 링크 다루기
- 5장 파일시스템 다루기
- 들어가며
- FileStore 정보 구하기
- FileSystem 정보 구하기
- SimpleFileVisitor 클래스로 파일시스템 탐색하기
- SimpleFileVisitor 클래스로 디렉토리 삭제하기
- SimpleFileVisitor 클래스로 디렉토리 복사하기
- DirectoryStream 인터페이스로 디렉토리에 담긴 항목 다루기
- 글로빙으로 디렉토리 필터링하기
- 커스텀 디렉토리 필터 만들기
- WatchEvents로 파일 이벤트 감시하기
- ZIP 파일시스템
- 6장 스트림 IO
- 들어가며
- 작은 파일 다루기
- 버퍼를 사용한 IO로 파일 다루기
- SeekableByteChannel를 이용한 랜덤 엑세스 IO
- AsynchronousServerSocketChannel로 비동기 통신하기
- AsynchronousFileChannel로 파일 쓰기
- AsynchronousFileChannel로 파일 읽기
- SecureDirectoryStream 클래스
- 7장 향상된 GUI
- 들어가며
- AWT와 Swing 혼용하기
- 윈도우 타입 지정하기
- 윈도우의 투명도 조절하기
- 다양한 색조로 윈도우의 투명도 표현하기
- 독특한 형태의 윈도우 만들기
- 자바 7에서 추가된 새로운 경계선 타입
- FileDialog 클래스로 여러 개의 파일을 한 번에 선택하기
- 프린트 대화창 다루기
- 패스워드 필드에 JLayer 데코레이터 적용하기
- 8장 이벤트 처리
- 들어가며
- 마우스 버튼과 고해상도 마우스 휠 다루기
- 윈도우의 포커스 제어하기
- SecondaryLoop으로 모달 다이얼로그 박스 흉내내기
- 비정상적으로 깨어나는 스레드 다루기
- 이벤트 핸들러로 애플릿 초기화 상태 다루기
- 9장 데이터베이스, 보안, 시스템 관련 향상된 기능
- 들어가며
- RowSetFactory 클래스 사용법
- 데이터베이스 관련 개선 사항
- ExtendedSSLSession 인터페이스
- MXBeans로 JVM과 시스템 프로세스 로드 모니터링하기
- OS 프로세스의 입력과 출력 리다이렉션하기
- HTML 페이지에 JNLP 파일 임베딩하기
- 10장 동시성 처리
- 들어가며
- 자바에서 제공하는 join/fork 프레임워크
- Phaser 사용법
- 멀티스레드 환경에서 안전하게 ConcurrentLinkedDeque 클래스를 사용하는 방법
- LinkedTransferQueue 클래스
- ThreadLocalRandom 클래스로 멀티스레드 지원하기
- 11장 여러 가지 개선 사항
- 들어가며
- 자바 7에서 주 단위 다루기
- 자바 7에서 통화 단위 다루기
- NumericShaper.Range 열거형으로 화면에 숫자 표시하기
- 자바 7에서 개선된 자바빈 기능
- 자바 7에서 로케일과 Locale.Builder 클래스 다루기
- null 레퍼런스