최신 JAVA 21 버전 반영! 9년 동안 꾸준히 사랑받은 자바 베스트셀러, 『이것이 자바다』 3판!
2015년 초판이 발간된 이후 『이것이 자바다』는 명실상부한 자바의 교과서, 자바의 바이블로 큰 사랑을 받아왔다. 기본에 충실하면서도 개념 하나하나를 놓치지 않는 저자의 꼼꼼한 설명은 많은 독자를 훌륭한 개발자로 성장하게 했다. 이번에 개정된 『이것이 자바다(3판)』은 최신 자바 21 LTS 버전을 기반으로 기존 내용을 보강했으며, 자바 LTS 버전별 경향과 특징을 반영하여 자바를 활용한 객체지향 프로그래밍의 모든 과정을 친절하게 안내한다.
이 책은 자바 언어의 기초부터 다양한 자바 프로그래밍 기법까지 그림을 통해 체계적으로 설명한다. 또한 900개의 실전 예제를 따라 하면서 충분히 연습할 수 있도록 구성했다. 책을 완독하고 나면 코드만 보고도 자바의 구조와 실행 흐름을 머릿속으로 그려 내는 자신의 모습을 발견할 수 있을 것이다.
목차
PART 01 자바 언어의 기초 Chapter 01 자바 시작하기 1.1 프로그래밍 언어와 자바 1.2 운영체제별 JDK 설치 1.3 운영체제별 환경 변수 설정 1.4 바이트코드 파일과 자바 가상 머신 1.5 소스 작성부터 실행까지 1.6 이클립스 설치 1.7 이클립스 프로젝트 생성 1.8 이클립스 소스 작성부터 실행까지 1.9 코드 용어 이해 1.10 코드 주석 달기 1.11 실행문과 세미콜론 확인문제
Chapter 02 변수와 타입 2.1 변수 선언 2.2 정수 타입 2.3 문자 타입 2.4 실수 타입 2.5 논리 타입 2.6 문자열 타입 2.7 자동 타입 변환 2.8 강제 타입 변환 2.9 연산식에서 자동 타입 변환 2.10 문자열을 기본 타입으로 변환 2.11 변수 사용 범위 2.12 콘솔로 변수값 출력 2.13 키보드 입력 데이터를 변수에 저장 확인문제
Chapter 03 연산자 3.1 부호/증감 연산자 3.2 산술 연산자 3.3 오버플로우와 언더플로우 3.4 정확한 계산은 정수 연산으로 3.5 나눗셈 연산 후 NaN과 Infinity 처리 3.6 비교 연산자 3.7 논리 연산자 3.8 비트 논리 연산자 3.9 비트 이동 연산자 3.10 대입 연산자 3.11 삼항(조건) 연산자 3.12 연산의 방향과 우선순위 확인문제
Chapter 04 조건문과 반복문 4.1 코드 실행 흐름 제어 4.2 if 문 4.3 switch 문 4.4 for 문 4.5 while 문 4.6 do-while 문 4.7 break 문 4.8 continue 문 확인문제
PART 02 객체지향 프로그래밍 Chapter 05 참조 타입 5.1 데이터 타입 분류 5.2 메모리 사용 영역 5.3 참조 타입 변수의 ==, != 연산 5.4 null과 NullPointerException 5.5 문자열(String) 타입 5.6 배열(Array) 타입 5.7 다차원 배열 5.8 객체를 참조하는 배열 5.9 배열 복사 5.10 배열 항목 반복을 위한 향상된 for 문 5.11 main( ) 메소드의 String[ ] 매개변수 용도 5.12 열거(Enum) 타입 확인문제
Chapter 06 클래스 6.1 객체지향 프로그래밍 6.2 객체와 클래스 6.3 클래스 선언 6.4 객체 생성과 클래스 변수 6.5 클래스의 구성 멤버 6.6 필드 선언과 사용 6.7 생성자 선언과 호출 6.8 메소드 선언과 호출 6.9 인스턴스 멤버 6.10 정적 멤버 6.11 final 필드와 상수 6.12 패키지 6.13 접근 제한자 6.14 Getter와 Setter 6.15 싱글톤 패턴 확인문제
Chapter 07 상속 7.1 상속 개념 7.2 클래스 상속 7.3 부모 생성자 호출 7.4 메소드 재정의 7.5 final 클래스와 final 메소드 7.6 protected 접근 제한자 7.7 타입 변환 7.8 다형성 7.9 객체 타입 확인 7.10 추상 클래스 7.11 봉인된 클래스 확인문제
Chapter 08 인터페이스 8.1 인터페이스의 역할 8.2 인터페이스와 구현 클래스 선언 8.3 상수 필드 8.4 추상 메소드 8.5 디폴트 메소드 8.6 정적 메소드 8.7 private 메소드 8.8 다중 인터페이스 구현 8.9 인터페이스 상속 8.10 타입 변환 8.11 다형성 8.12 객체 타입 확인 8.13 봉인된 인터페이스 확인문제
Chapter 09 중첩 선언과 익명 객체 9.1 중첩 클래스 9.2 인스턴스 멤버 클래스 9.3 정적 멤버 클래스 9.4 로컬 클래스 9.5 바깥 멤버 접근 9.6 중첩 인터페이스 9.7 익명 객체 확인문제
Chapter 10 라이브러리와 모듈 10.1 라이브러리 10.2 모듈 10.3 응용프로그램 모듈화 10.4 모듈 배포용 JAR 파일 10.5 패키지 은닉 10.6 전이 의존 10.7 집합 모듈 10.8 리플렉션 허용 10.9 자바 표준 모듈 확인문제
Chapter 11 예외 처리 11.1 예외와 예외 클래스 11.2 예외 처리 코드 11.3 예외 종류에 따른 처리 11.4 리소스 자동 11.5 예외 떠넘기기 11.6 사용자 정의 예외 확인문제
찾아보기
PART 03 라이브러리 활용 Chapter 12 java.base 모듈 12.1 API 도큐먼트 12.2 java.base 모듈 12.3 Object 클래스 12.4 System 클래스 12.5 문자열 클래스 12.6 포장 클래스 12.7 수학 클래스 12.8 날짜와 시간 클래스 12.9 형식 클래스 12.10 정규 표현식 클래스 12.11 리플렉션 12.12 어노테이션 확인문제
Chapter 13 제네릭 13.1 제네릭이란? 13.2 제네릭 타입 13.3 제네릭 메소드 13.4 제한된 타입 파라미터 13.5 와일드카드 타입 파라미터 확인문제
Chapter 14 멀티 스레드 14.1 멀티 스레드 개념 14.2 메인 스레드 14.3 작업 스레드 생성과 실행 14.4 스레드 이름 14.5 스레드 상태 14.6 스레드 동기화 14.7 스레드 안전 종료 14.8 데몬 스레드 14.9 스레드풀 확인문제
Chapter 15 컬렉션 자료구조 15.1 컬렉션 프레임워크 15.2 List 컬렉션 15.3 Set 컬렉션 15.4 Map 컬렉션 15.5 검색 기능을 강화시킨 컬렉션 15.6 LIFO와 FIFO 컬렉션 15.7 동기화된 컬렉션 15.8 수정할 수 없는 컬렉션 확인문제
Chapter 16 람다식 16.1 람다식이란? 16.2 매개변수가 없는 람다식 16.3 매개변수가 있는 람다식 16.4 리턴값이 있는 람다식 16.5 메소드 참조 16.6 생성자 참조 확인문제
Chapter 17 스트림 요소 처리 17.1 스트림이란? 17.2 내부 반복자 17.3 중간 처리와 최종 처리 17.4 리소스로부터 스트림 얻기 17.5 요소 걸러내기(필터링) 17.6 요소 변환(매핑) 17.7 요소 정렬 17.8 요소를 하나씩 처리(루핑) 17.9 요소 조건 만족 여부(매칭) 17.10 요소 기본 집계 17.11 요소 커스텀 집계 17.12 요소 수집 17.13 요소 병렬 처리 확인문제
PART 04 데이터 입출력 Chapter 18 스트림 요소 처리 18.1 입출력 스트림 18.2 바이트 출력 스트림 18.3 바이트 입력 스트림 18.4 문자 입출력 스트림 18.5 보조 스트림 18.6 문자 변환 스트림 18.7 성능 향상 스트림 18.8 기본 타입 스트림 18.9 프린트 스트림 18.10 객체 스트림 18.11 File과 Files 클래스 확인문제
Chapter 19 네트워크 입출력 19.1 네트워크 기초 19.2 IP 주소 얻기 19.3 TCP 네트워킹 19.4 UDP 네트워킹 19.5 서버의 동시 요청 처리 19.6 JSON 데이터 형식 19.7 TCP 채팅 프로그램 확인문제
Chapter 20 데이터베이스 입출력 20.1 JDBC 개요 20.2 DBMS 설치 20.3 Client Tool 설치 20.4 DB 구성 20.5 DB 연결 20.6 데이터 저장 20.7 데이터 수정 20.8 데이터 삭제 20.9 데이터 읽기 20.10 프로시저와 함수 호출 20.11 트랜잭션 처리 20.12 게시판 구현 확인문제
PART 05 최신 자바의 강화된 언어 기능 Chapter 21 자바 21에서 강화된 언어 및 라이브러리 21.1 자바 21 버전에서 강화된 내용 21.2 로컬(지역) 변수 타입 추론 21.3 switch 문의 null 처리 21.4 switch 문의 패턴 매칭 21.5 레코드 패턴 21.6 가상 스레드 21.7 순차 컬렉션 21.8 기본 문자셋 변경
찾아보기
[부록] Appendix 01 데이터베이스 입출력(MySQL용) 20.1 JDBC 개요 20.2 DBMS 설치 20.3 Client Tool 설치 20.4 DB 구성 20.5 DB 연결 20.6 데이터 저장 20.7 데이터 수정 20.8 데이터 삭제 20.9 데이터 읽기 20.10 트랜잭션 처리 20.11 게시판 구현
Appendix 03 Java UI - JavaFX 01 JavaFX 개요 02 JavaFX 프로젝트 생성 및 실행 03 JavaFX 레이아웃 04 JavaFX 컨테이너 05 JavaFX 이벤트 처리 06 JavaFX 속성 감시와 바인딩 07 JavaFx 컨트롤 08 JavaFX 메뉴 바와 툴바 09 JavaFX 다이얼로그 10 JavaFX CSS 스타일 11 JavaFX 스레드 UI 변경 12 장면 이동과 애니메이션 13 JavaFX 과제
Appendix 04 NIO 기반 입출력 및 네트워킹 01 NIO 소개 02 파일과 디렉토리 03 버퍼 04 파일 입출력 05 파일 비동기 입출력 06 TCP 네트워크 입출력 07 TCP 비동기 네트워크 입출력 08 UDP 네트워크 입출력 09 NIO 과제
저자소개
신용권, 임경균
출판사리뷰
기초부터 활용까지 한 권으로 끝내는 자바의 바이블!
많은 학습자로부터 사랑받아 온 『이것이 자바다(3판)』은 기존 내용에 최신 자바 21 LTS 버전의 강화된 기능과 라이브러리를 보강해 반드시 알아야 할 내용은 책의 본문으로, 선택적으로 찾아볼 할 내용은 [무료 특별판] e-Book으로 구성했다. 더욱 풍부해진 900개의 실전 예제를 직접 따라 하다 보면 자바를 활용한 객체지향 프로그래밍의 과정을 보다 체계적으로 학습할 수 있을 것이다.
이 책은 자바 프로그래밍 입문을 위해 자바의 기초부터 심화까지 깊이 있게 공부하고 싶은 (비)전공자와 객체지향 프로그래밍의 개념을 다시 체계적으로 정리하고 싶은 현업 개발자, 이미 현업에서 자바를 사용하고 있지만 최신 자바의 강화된 기능까지 알고자 하는 시니어 개발자에게 권한다.
【3판에서 추가된 최신 자바 21의 강화된 언어 기능】 - 로컬(지역) 변수 타입 추론 - switch 문의 null 처리 및 패턴 매칭 - 레코드 패턴 - 가상 스레드 - 순차 컬렉션 - 기본 문자셋 변경
[무료 특별판] e-Book 별도 제공 『이것이 자바다(3판)』의 [무료 특별판]에서는 본 책을 학습한 이후 선택/심화 학습을 위해 필요한 내용을 담았다. 20장에서 학습한 Oracle용 데이터베이스 입출력과 같은 내용을 MySQL용 버전으로 학습하거나 Swing, JavaFX, NIO 기반 입출력 및 네트워킹 등의 내용을 추가로 학습할 수 있다. 각 온라인 서점과 한빛미디어 홈페이지 자료실(https://www.hanbit.co.kr/src/11229)에서 『이것이 자바다(3판)』의 [무료 특별판] e-Book을 확인해 보자.
고액결제의 경우 안전을 위해 카드사에서 확인전화를 드릴 수도 있습니다. 확인과정에서 도난 카드의 사용이나 타인 명의의 주문등
정상적인 주문이 아니라고 판단될 경우 임의로 주문을 보류 또는 취소할 수 있습니다.
무통장 입금은 상품 구매 대금은 PC뱅킹, 인터넷뱅킹, 텔레뱅킹 혹은 가까운 은행에서 직접 입금하시면 됩니다.
주문시 입력한 입금자명과 실제입금자의 성명이 반드시 일치하여야 하며, 7일 이내로 입금을 하셔야 하며 입금되지
않은 주문은 자동취소 됩니다.
배송정보
배송 방법 : 택배
배송 지역 : 전국지역
배송 비용 : 무료
배송 기간 : 3일 ~ 7일
배송 안내 : - 산간벽지나 도서지방은 별도의 추가금액을 지불하셔야 하는 경우가 있습니다.
고객님께서 주문하신 상품은 입금 확인후 배송해 드립니다. 다만, 상품종류에 따라서 상품의 배송이 다소 지연될 수 있습니다.
교환 및 반품정보
교환 및 반품 주소 - [07271] 서울특별시 영등포구 양산로 57-5 (양평동3가) 양평동 이노플렉스 B101~103
교환 및 반품이 가능한 경우 - 계약내용에 관한 서면을 받은 날부터 7일. 단, 그 서면을 받은 때보다 재화등의 공급이 늦게 이루어진 경우에는 재화등을 공급받거나 재화등의 공급이 시작된 날부터 7일 이내
- 공급받으신 상품 및 용역의 내용이 표시.광고 내용과 다르거나 계약내용과 다르게 이행된 때에는 당해 재화 등을 공급받은 날 부터 3월이내, 그사실을 알게 된 날 또는 알 수 있었던 날부터 30일이내
교환 및 반품이 불가능한 경우 - 이용자에게 책임 있는 사유로 재화 등이 멸실 또는 훼손된 경우(다만, 재화 등의 내용을 확인하기 위하여 포장 등을 훼손한 경우에는 청약철회를 할 수 있습니다)
- 이용자의 사용 또는 일부 소비에 의하여 재화 등의 가치가 현저히 감소한 경우
- 시간의 경과에 의하여 재판매가 곤란할 정도로 재화등의 가치가 현저히 감소한 경우
- 복제가 가능한 재화등의 포장을 훼손한 경우
- 개별 주문 생산되는 재화 등 청약철회시 판매자에게 회복할 수 없는 피해가 예상되어 소비자의 사전 동의를 얻은 경우
- 디지털 콘텐츠의 제공이 개시된 경우, (다만, 가분적 용역 또는 가분적 디지털콘텐츠로 구성된 계약의 경우 제공이 개시되지 아니한 부분은 청약철회를 할 수 있습니다.)
※ 고객님의 마음이 바뀌어 교환, 반품을 하실 경우 상품반송 비용은 고객님께서 부담하셔야 합니다.
(색상 교환, 사이즈 교환 등 포함)