logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

카이 호스트만의 코어 자바 8

카이 호스트만의 코어 자바 8

(현대 자바를 빠르게 학습하자!)

카이 호스트만 (지은이), 신경근 (옮긴이)
  |  
길벗
2015-12-18
  |  
36,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
yes24 로딩중
교보문고 로딩중
영풍문고 로딩중
인터파크 로딩중
11st 로딩중
G마켓 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
로딩중

e-Book

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
aladin 28,800원 -10% 1440원 24,480원 >

책 이미지

카이 호스트만의 코어 자바 8

책 정보

· 제목 : 카이 호스트만의 코어 자바 8 (현대 자바를 빠르게 학습하자!)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 자바
· ISBN : 9791186978115
· 쪽수 : 536쪽

책 소개

이 책은 자바 8에 추가된 개념과 특징을 기존 자바에 덧붙인 것이 아니라 기본 문법부터 라이브러리까지 현대 자바의 시각으로 자바의 모든 면을 배울 수 있게 해준다. 이 책으로 간결하고 빠르게 현대 자바를 배울 수 있다.

목차

지은이 서문
옮긴이 서문

1장 기본 프로그래밍 구조

1.1 첫 번째 프로그램
___1.1.1 Hello, World 프로그램 분석하기
___1.1.2 자바 프로그램 컴파일하고 실행하기
___1.1.3 메서드 호출
1.2 기본 타입
___1.2.1 정수 타입
___1.2.2 부동소수점 타입
___1.2.3 char 타입
___1.2.4 boolean 타입
1.3 변수
___1.3.1 변수 선언
___1.3.2 변수 이름
___1.3.3 변수 초기화
___1.3.4 상수
1.4 산술 연산
___1.4.1 대입
___1.4.2 기본 산술
___1.4.3 수학 메서드
___1.4.4 숫자 타입 변환
___1.4.5 관계 연산자와 논리 연산자
___1.4.6 큰 숫자
1.5 문자열
___1.5.1 문자열 연결
___1.5.2 부분 문자열
___1.5.3 문자열 비교
___1.5.4 숫자와 문자열 사이의 변환
___1.5.5 문자열 API
___1.5.6 코드 포인트와 코드 유닛
1.6 입력과 출력
___1.6.1 입력 읽어오기
___1.6.2 형식화된 출력
1.7 제어 흐름
___1.7.1 분기
___1.7.2 루프
___1.7.3 중단과 계속
___1.7.4 지역 변수의 유효 범위
1.8 배열과 배열 리스트
___1.8.1 배열 다루기
___1.8.2 배열 생성
___1.8.3 배열 리스트
___1.8.4 기본 타입의 래퍼 클래스
___1.8.5 향상된 for 루프
___1.8.6 배열과 배열 리스트 복사하기
___1.8.7 배열 알고리즘
___1.8.8 명령줄 인자
___1.8.9 다차원 배열
1.9 함수 분해
___1.9.1 정적 메서드 선언하고 호출하기
___1.9.2 배열 파라미터와 반환 값
___1.9.3 가변 인자
연습문제

2장 객체 지향 프로그래밍

2.1 객체 이용하기
___2.1.1 접근자 메서드와 변경자 메서드
___2.1.2 객체 참조
2.2 클래스 구현하기
___2.2.1 인스턴스 변수
___2.2.2 메서드 선언부
___2.2.3 메서드 구현부
___2.2.4 인스턴스 메서드 호출
___2.2.5 this 참조
___2.2.6 값을 이용한 호출
2.3 객체 생성
___2.3.1 생성자 구현하기
___2.3.2 오버로딩
___2.3.3 생성자에서 특정 생성자 호출하기
___2.3.4 기본 초기화
___2.3.5 인스턴스 변수 초기화
___2.3.6 최종 인스턴스 변수
___2.3.7 인자 없는 생성자
2.4 정적 변수와 정적 메서드
___2.4.1 정적 변수
___2.4.2 정적 상수
___2.4.3 정적 초기화 블록
___2.4.4 정적 메서드
___2.4.5 팩토리 메서드
2.5 패키지
___2.5.1 패키지 선언
___2.5.2 클래스 패스
___2.5.3 패키지 유효 범위
___2.5.4 클래스 임포트하기
___2.5.5 정적 임포트
2.6 중첩 클래스
___2.6.1 정적 중첩 클래스
___2.6.2 내부 클래스
___2.6.3 내부 클래스용 특수 문법 규칙
2.7 문서화 주석
___2.7.1 주석 넣기
___2.7.2 클래스 주석
___2.7.3 메서드 주석
___2.7.4 변수 주석
___2.7.5 일반 주석
___2.7.6 링크
___2.7.7 패키지 주석과 개요 주석
___2.7.8 주석 내보내기
연습문제

3장 인터페이스와 람다 표현식

3.1 인터페이스
___3.1.1 인터페이스 선언하기
___3.1.2 인터페이스 구현하기
___3.1.3 인터페이스 타입으로 변환하기
___3.1.4 타입 변환과 instanceof 연산자
___3.1.5 인터페이스 확장하기
___3.1.6 여러 인터페이스 구현하기
___3.1.7 상수
3.2 정적 메서드와 기본 메서드
___3.2.1 정적 메서드
___3.2.2 기본 메서드
___3.2.3 기본 메서드의 충돌 해결하기
3.3 인터페이스의 예
___3.3.1 Comparable 인터페이스
___3.3.2 Comparator 인터페이스
___3.3.3 Runnable 인터페이스
___3.3.4 사용자 인터페이스 콜백
3.4 람다 표현식
___3.4.1 람다 표현식 문법
___3.4.2 함수형 인터페이스
3.5 메서드 참조와 생성자 참조
___3.5.1 메서드 참조
___3.5.2 생성자 참조
3.6 람다 표현식 처리하기
___3.6.1 지연 실행 구현하기
___3.6.2 함수형 인터페이스 고르기
___3.6.3 자신만의 함수형 인터페이스 구현하기
3.7 람다 표현식과 변수 유효 범위
___3.7.1 람다 표현식의 유효 범위
___3.7.2 바깥쪽 유효 범위에 속한 변수 접근하기
3.8 고차 함수
___3.8.1 함수를 반환하는 메서드
___3.8.2 함수를 수정하는 메서드
___3.8.3 Comparator 인터페이스의 메서드
3.9 지역 내부 클래스
___3.9.1 지역 클래스
___3.9.2 익명 클래스
연습문제

4장 상속과 리플렉션

4.1 클래스 확장하기
___4.1.1 슈퍼클래스와 서브클래스
___4.1.2 서브클래스 메서드 정의와 상속
___4.1.3 메서드 오버라이딩
___4.1.4 서브클래스 생성
___4.1.5 슈퍼클래스 할당
___4.1.6 타입 변환
___4.1.7 최종 메서드와 최종 클래스
___4.1.8 추상 메서드와 추상 클래스
___4.1.9 보호 접근
___4.1.10 익명 서브클래스
___4.1.11 상속과 기본 메서드
___4.1.12 super를 이용한 메서드 표현식
4.2 Object: 보편적 슈퍼클래스
___4.2.1 toString 메서드
___4.2.2 equals 메서드
___4.2.3 hashCode 메서드
___4.2.4 객체 복제하기
4.3 열거
___4.3.1 열거의 메서드
___4.3.2 생성자, 메서드, 필드
___4.3.3 인스턴스의 구현부
___4.3.4 정적 멤버
___4.3.5 열거를 기준으로 스위치하기
4.4 실행 시간 타입 정보와 리소스
___4.4.1 Class 클래스
___4.4.2 리소스 로드하기
___4.4.3 클래스 로더
___4.4.4 컨텍스트 클래스 로더
___4.4.5 서비스 로더
4.5 리플렉션
___4.5.1 클래스 멤버 나열하기
___4.5.2 객체 조사하기
___4.5.3 메서드 호출하기
___4.5.4 객체 생성하기
___4.5.5 자바빈즈
___4.5.6 배열 다루기
___4.5.7 프록시
연습문제

5장 예외, 단정, 로깅

5.1 예외 처리
___5.1.1 예외 던지기
___5.1.2 예외 계층
___5.1.3 검사 예외 선언하기
___5.1.4 예외 잡기
___5.1.5 Try-with-Resources 문
___5.1.6 finally 절
___5.1.7 예외 다시 던지기와 예외 연쇄하기
___5.1.8 스택 추적
___5.1.9 Objects.requireNonNull 메서드
5.2 단정
___5.2.1 단정 사용하기
___5.2.2 단정 활성화와 비활성화
5.3 로깅
___5.3.1 로거 사용하기
___5.3.2 로거
___5.3.3 로깅 레벨
___5.3.4 기타 로깅 메서드
___5.3.5 로깅 설정
___5.3.6 로그 핸들러
___5.3.7 필터와 서식 지정자
연습문제

6장 제네릭 프로그래밍

6.1 제네릭 클래스
6.2 제네릭 메서드
6.3 타입 경계
6.4 타입 가변성과 와일드카드
___6.4.1 서브타입 와일드카드
___6.4.2 슈퍼타입 와일드카드
___6.4.3 타입 변수와 함께 사용하는 와일드카드
___6.4.4 경계 없는 와일드카드
___6.4.5 와일드카드 캡처
6.5 자바 가상 머신의 제네릭
___6.5.1 타입 소거
___6.5.2 타입 변환 연산자 삽입
___6.5.3 브릿지 메서드
6.6 제네릭의 제약
___6.6.1 기본 타입 인자가 없다
___6.6.2 실행 시간에는 모든 타입이 로 형태다
___6.6.3 타입 변수의 인스턴스를 만들 수 없다
___6.6.4 파라미터화된 타입의 배열을 생성할 수 없다
___6.6.5 정적 컨텍스트에서 클래스 타입 변수가 유효하지 않다
___6.6.6 메서드가 소거 후 충돌하지 않을 수도 있다
___6.6.7 예외와 제네릭
6.7 리플렉션과 제네릭
___6.7.1 Class 클래스
___6.7.2 가상 머신에서 제네릭 타입 정보
연습문제

7장 컬렉션

7.1 컬렉션 프레임워크 개요
7.2 반복자
7.3 집합
7.4 맵
7.5 기타 컬렉션
___7.5.1 프로퍼티
___7.5.2 비트 집합
___7.5.3 열거 집합과 열거 맵
___7.5.4 스택, 큐, 덱, 우선순위 큐
___7.5.5 약한 해시 맵
7.6 뷰
___7.6.1 범위
___7.6.2 빈 뷰와 싱글턴 뷰
___7.6.3 수정 불가 뷰
연습문제

8장 스트림
8.1 반복에서 스트림 연산으로 전환하기
8.2 스트림 생성
8.3 filter, map, flatMap 메서드
8.4 서브스트립 추출과 스트림 결합하기
8.5 기타 스트림 변환
8.6 단순 리덕션
8.7 옵션 타입
___8.7.1 옵션 값을 사용하는 방법
___8.7.2 옵션 값을 사용하지 않는 방법
___8.7.3 옵션 값 생성하기
___8.7.4 flatMap으로 옵션 값 함수 합성하기
8.8 결과 모으기
8.9 맵으로 모으기
8.10 그루핑과 파티셔닝
8.11 다운스트림 컬렉터
8.12 리덕션 연산
8.13 기본 타입 스트림
8.14 병렬 스트림
연습문제

9장 입출력 처리하기

9.1 입력/출력 스트림, 리더와 라이터
___9.1.1 스트림 얻기
___9.1.2 바이트 읽기
___9.1.3 바이트 쓰기
___9.1.4 문자 인코딩
___9.1.5 텍스트 입력
___9.1.6 텍스트 출력
___9.1.7 바이너리 데이터 읽기/쓰기
___9.1.8 임의 접근 파일
___9.1.9 메모리 맵 파일
___9.1.10 파일 잠금
9.2 경로, 파일, 디렉터리
___9.2.1 경로
___9.2.2 파일과 디렉터리 생성하기
___9.2.3 파일 복사, 이동, 삭제
___9.2.4 디렉터리 엔트리 방문하기
___9.2.5 ZIP 파일 시스템
9.3 URL 커넥션
9.4 정규 표현식
___9.4.1 정규 표현식 문법
___9.4.2 하나 또는 모든 일치 대상 찾기
___9.4.3 그룹
___9.4.4 일치 항목 제거 또는 교체
___9.4.5 플래그
9.5 직렬화
___9.5.1 Serializable 인터페이스
___9.5.2 일시적인 인스턴스 변수
___9.5.3 readObject와 writeObject 메서드
___9.5.4 readResolve와 writeReplace 메서드
___9.5.5 버전 관리
연습문제

10장 병행 프로그래밍

10.1 병행 태스크
___10.1.1 태스크 실행하기
___10.1.2 퓨처와 실행자 서비스
10.2 스레드 안전성
___10.2.1 가시성
___10.2.2 경쟁 조건
___10.2.3 안전한 병행성을 실현하는 전략
___10.2.4 불변 클래스
10.3 병렬 알고리즘
___10.3.1 병령 스트림
___10.3.2 병렬 배열 연산
10.4 스레드 안전 자료 구조
___10.4.1 병행 해시 맵
___10.4.2 블로킹 큐
___10.4.3 기타 스레드 안전 자료 구조
10.5 원잣값
10.6 잠금
___10.6.1 재진입 가능 잠금
___10.6.2 synchronized 키워드
___10.6.3 조건 대기
10.7 스레드
___10.7.1 스레드 시작하기
___10.7.2 스레드 인터럽션
___10.7.3 스레드 로컬 변수
___10.7.4 기타 스레드 프로퍼티
10.8 비동기 계산
___10.8.1 사용자 인터페이스 콜백에서 오랜 시간 실행하는 태스크
___10.8.2 완료 가능한 퓨처
10.9 프로세스
___10.9.1 프로세스 생성하기
___10.9.2 프로세스 실행하기
연습문제

11장 애너테이션

11.1 애너테이션 사용하기
___11.1.1 에너테이션 요소
___11.1.2 다중 애너테이션과 반복 애너테이션
___11.1.3 선언부에 애너테이션 붙이기
___11.1.4 타입 사용에 애너테이션 붙이기
___11.1.5 수신자를 명확하게 지정하기
11.2 애너테이션 정의하기
11.3 표준 애너테이션
___11.3.1 컴파일용 애너테이션
___11.3.2 리소스 관리용 애너테이션
___11.3.3 메타 애너테이션
11.4 실행 시간에 애너테이션 처리하기
11.5 소스 수준 애너테이션 처리
___11.5.1 애너테이션 핸들러
___11.5.2 언어 모델 API
___11.5.3 애너테이션으로 소스 코드 생성하기
연습문제

12장 날짜와 시간 API

12.1 타임 라인
12.2 지역 날짜
12.3 날짜 조정기
12.4 지역 시간
12.5 구역 시간
12.6 서식 지정과 파싱
12.7 레거시 코드와 상호 동작하기
연습문제

13장 국제화

13.1 로케일
___13.1.1 로케일 지정하기
___13.1.2 기본 로케일
___13.1.3 표시 이름
13.2 숫자 형식
13.3 통화
13.4 날짜와 시간 서식 지정
13.5 컬레이션과 정규화
13.6 메시지 서식 지정
13.7 리소스 번들
___13.7.1 리소스 번들 구성하기
___13.7.2 번들 클래스
13.8 문자 인코딩
13.9 프레퍼런스
연습문제

14장 컴파일링과 스크립팅

14.1 컴파일러 API
___14.1.1 컴파일러 호출하기
___14.1.2 컴파일 태스크 실행하기
___14.1.3 메모리에서 소스 파일 읽기
___14.1.4 메모리에 바이트 코드 작성하기
___14.1.5 진단 정보 캡처하기
14.2 스크립팅 API
___14.2.1 스크립팅 엔진 얻기
___14.2.2 바인딩
___14.2.3 입력과 출력 재지정하기
___14.2.4 스크립팅 함수와 메서드 호출하기
___14.2.5 스크립트 컴파일하기
14.3 Nashorn 스크립팅 엔진
___14.3.1 명령줄에서 Nashorn 실행하기
___14.3.2 게터와 세터, 오버로드된 메서드 호출하기
___14.3.3 자바 객체 생성하기
___14.3.4 자바스크립트와 자바에서 문자열
___14.3.5 숫자
___14.3.6 배열 다루기
___14.3.7 리스트와 맵
___14.3.8 람다
___14.3.9 자바 클래스 확장과 자바 인터페이스 구현하기
___14.3.10 예외
14.4 Nashorn을 이용한 셸 스크립팅
___14.4.1 셸 명령 실행하기
___14.4.2 문자열 인터폴레이션
___14.4.3 스크립트 입력
연습문제

찾아보기

저자소개

카이 호스트만 (지은이)    정보 더보기
『가장 빨리 만나는 코어 자바 9』(길벗, 2018), 『Core Java, Volumes I, 12th Edition』(Pearson, 2021), 『Scala for the Impatient, 2nd Edition』(Addison-Wesley, 2016)의 저자다. 산호세 주립 대학교 컴퓨터공학부의 명예교수이자 자바 챔피언이며 컴퓨터 분야 콘퍼런스의 연사로도 자주 참여한다.
펼치기
신경근 (옮긴이)    정보 더보기
넥스텔레콤에서 SIP 서버 매니저와 빌링 서버 개발을 시작으로, 한컴씽크프리에서 자바/안드로이드 공통 라이브러리 개발을 담당했고 몇몇 스타트업에서 LBS, SNS, 뉴스 큐레이션 앱 등을 개발했다. 옮긴 책으로는 《가장 빨리 만나는 자바 8》, 《스프링 4 코딩 공작소》가 있다. 요즘은 온라인 학습 시스템을 개발/운영 중이다.
펼치기

책속에서

자바를 사용하는 핵심 이유는 병행 프로그래밍을 다루는 것이다. 자바 라이브러리에서 손쉽게 이용할 수 있는 병렬 알고리즘과 스레드 안전 자료 구조 덕분에 애플리케이션 개발자가 병행 프로그래밍을 다루는 방식이 완전히 변했다. 이 책에서는 새롭게 접근하여 오류가 발생하기 쉬운 저수준 구조 대신 강력한 라이브러리 기능을 사용하는 방법을 보여준다.
전통적인 자바 책은 사용자 인터페이스 프로그래밍에 초점을 두지만, 요즘에는 소수의 개발자만이 데스크톱 컴퓨터용 사용자 인터페이스를 만든다. 서버 측 프로그래밍이나 안드로이드 프로그래밍에 자바를 사용할 계획이라면 데스크톱 GUI 코드로 주의를 빼앗기지 않고 이 책을 효과적으로 사용할 수 있다.
마지막으로 이 책은 대학 강의나 시스템 전문가가 아니라 애플리케이션 개발자를 대상으로 집필했다. 이 책은 애플리케이션 개발자가 씨름해야 하는 로깅과 파일 작업 같은 문제를 다룬다. 하지만 연결 리스트를 손수 구현하는 방법이나 웹 서버를 작성하는 방법은 다루지 않는다. ---지은이 서문 중에서

지난 몇 년간 거대한 사용자 집단을 아우르는 소셜 네트워크 서비스와 온라인 마켓이 다각도로 영역을 확대하면서 클라우드 기반 서비스와 빅데이터 처리의 중요성이 날로 커지고 있다. 최근 들어서는 이런 서비스에서 얻은 데이터를 토대로 사용자의 이용 패턴 등을 분석하여 새로운 가능성과 가치를 이끌어내는 데이터 과학이 조명을 받고 있다.
대규모 데이터를 분석하고 처리하려면 병렬/분산 처리가 필수이고, 노드별 독립 처리와 손쉬운 결과 취합이 중요하다. 자연스레 이러한 처리에 적합한 함수형 프로그래밍 언어들이 주류 프로그래밍 언어 대열에 올라섰다. 지난 몇 년간 자바가 이 큰 흐름에 상대적으로 뒤처지면서 오래된 언어라는 다소 불편한 인식도 있었던 게 사실이다.
지난해 5월, 전 세계 자바 개발자들이 손꼽아 기다리던 자바 8이 공식으로 릴리스 되면서 항간의 불편과 우려를 상당히 덜어주었다. 함수형 프로그래밍을 언어 수준에서 지원하는 람다 표현식을 도입하고, 기존 컬렉션 라이브러리에서 자연스러운 함수형 프로그래밍을 가능하게 하는 스트림 라이브러리로 무장한 것이다. ---옮긴이 서문 중에서


추천도서

이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책