전체상품목록 바로가기

본문 바로가기

맨위로 TOP

close
CUSTOMER CENTER
공지사항
질문과 답변
상품후기
이벤트
자유게시판
공동구매
이용안내 FAQ

현재 위치
  1. 언니네책방
  2. 컴퓨터/IT
  3. 프로그래밍 언어
Java의 정석: 최신 Java 8.0 포함(3판)

Java의 정석: 최신 Java 8.0 포함(3판)

기본 정보
상품명 Java의 정석: 최신 Java 8.0 포함(3판)
정가 30,000원
판매가 27,000원
적립금 1,500원
출판사 도우출판
저자 남궁성
출간일 2016-02-01
주문수량 수량증가수량감소
쪽수 | 무게 | 크기 1,022쪽 | 1,500g | 184*254*42mm
ISBN 9788994492032
배송방법 택배
배송비 2,500원 (20,000원 이상 구매 시 무료)

개인결제창을 통한 결제 시 네이버 마일리지 적립 및 사용이 가능합니다.

옵션선택
상품 옵션
옵션 선택

위 옵션선택 박스를 선택하시면 아래에 상품이 추가됩니다.

상품 목록
상품명 상품수 가격
Java의 정석: 최신 Java 8.0 포함(3판) 수량증가 수량감소 (  1500.00)
TOTAL(QUANTITY) : 0 (0개)

할인가가 적용된 최종 결제예정금액은 주문 시 확인할 수 있습니다.

공유하기

이벤트

[책소개]
최근 7년동안 자바 분야의 베스트 셀러 1위를 지켜온 '자바의 정석'의 최신판. 저자가 카페에서 12년간 직접 독자들에게 답변을 해오면서 초보자가 어려워하는 부분을 잘 파악하고 쓴 책. 뿐만 아니라 기존의 경력자들을 위해 자바의 최신기능(람다와 스트림)을 자세하면서도 깊이있게 설명하고 있다. 저자가 2002년부터 꾸준히 집필해온 책으로 깊이와 세밀함 그리고 저자의 정성과 노력이 돋보이는 책이다. 12년간 저자가 카페에서 손수 답변해줬다는 사실은 이 책에 대한 신뢰를 갖게 한다.

[목차]
Chapter 1 자바를 시작하기 전에
1. 자바(Java Programming Language) / 2
1.1 자바란? / 2
1.2 자바의 역사 / 2
1.3 자바언어의 특징 / 3
1.4 JVM(Java Virtual Machine) / 4
2. 자바개발환경 구축하기 / 6
2.1 자바 개발도구(JDK)설치하기 / 6
2.2 Java API문서 설치하기 / 7
3. 자바로 프로그램작성하기 / 8
3.1 Hello.java / 8
3.2 자주 발생하는 에러와 해결방법 / 11
3.3 자바프로그램의 실행과정 / 12
3.4 주석(comment) / 13
3.5 이 책으로 공부하는 방법 / 14

Chapter 2 변수(Variable)
1. 변수와 상수 / 20
1.1 변수란? / 20
1.2 변수의 선언과 초기화 / 20
1.3 변수의 명명규칙 /25
2. 변수의 타입 / 27
2.1 기본형(primitive type) / 28
2.2 상수와 리터럴(constant & literal) / 30
2.3 형식화된 출력 - printf() / 36
2.4 화면에서 입력받기 - Scanner / 40
3. 진법 / 42
3.1 10진법과 2진법 / 42
3.2 비트(bit)와 바이트(byte) / 43
3.3 8진법과 16진법 / 44
3.4 정수의 진법 변환 / 46
3.5 실수의 진법변환 / 48
3.6 음수의 2진 표현 - 2의 보수법 / 50
4. 기본형(primitive type) / 55
4.1 논리형 - boolean / 55
4.2 문자형 - char / 55
4.3 정수형 - byte, short, int, long / 62
4.4 실수형 - float, double / 68
5. 형변환 / 74
5.1. 형변환(캐스팅, casting)이란? / 74
5.2 형변환 방법 / 74
5.3 정수형 간의 형변환 / 75
5.4 실수형 간의 형변환 / 77
5.5 정수형과 실수형간의 형변환 / 80
5.6 자동 형변환 / 82

Chapter 3 연산자(Operator)
1. 연산자(operator) / 86
1.1 연산자와 피연산자 / 86
1.2 식(式)과 대입연산자 / 86
1.3 연산자의 종류 / 87
1.4 연산자의 우선순위와 결합규칙 / 88
1.5 산술 변환(usual arithmetic conversion) / 91
2. 단항 연산자 / 93
2.1 증감 연산자 - ++, -- / 93
2.2 부호 연산자 - +, - / 96
3. 산술 연산자 / 97
3.1 사칙 연산자 - +, -, *, / / 97
3.2 나머지 연산자 - % / 108
4. 비교 연산자 / 109
4.1 대소비교 연산자 - 〈, 〉, 〈=, 〉= / 109
4.2 등가비교 연산자 - ==, != / 109
5. 논리 연산자 / 114
5.1 논리 연산자 - &&, ||, ! / 114
5.2 비트 연산자 - &, |, ^, ~, 〈〈, 〉〉 / 121
6. 그 외의 연산자 / 130
6.1 조건 연산자 - ? : / 130
6.2 대입 연산자 - =, op= / 132

Chapter 4 조건문과 반복문
1. 조건문 - if, switch / 136
1.1 if문 / 136
1.2 if-else문 / 140
1.3 if-else if문 / 141
1.4 중첩 if문 / 144
1.5 switch문 / 146
2. 반복문 - for, while, do-while / 156
2.1 for문 / 156
2.2 while문 / 167
2.3 do-while문 / 173
2.4 break문 / 175
2.5 continue문 / 176
2.6 이름 붙은 반복문 / 178

Chapter 5 배열(Array)
1. 배열(array) / 182
1.1 배열(array)이란? / 182
1.2 배열의 선언과 생성 / 183
1.3 배열의 길이와 인덱스 / 184
1.4 배열의 초기화 / 189
1.5 배열의 복사 / 192
1.6 배열의 활용 / 196
2. String배열 / 205
2.1 String배열의 선언과 생성 / 205
2.2 String배열의 초기화 / 205
2.3 char배열과 String클래스 / 208
2.4 커맨드 라인을 통해 입력받기 / 211
3. 다차원 배열 / 214
3.1 2차원 배열의 선언과 인덱스 / 214
3.2 2차원 배열의 초기화 / 215
3.3 가변 배열 / 219
3.4 다차원 배열의 활용 / 220

Chapter 6 객체지향 프로그래밍 I
1. 객체지향언어 / 230
1.1 객체지향언어의 역사 / 230
1.2 객체지향언어 / 230
2. 클래스와 객체 / 231
2.1 클래스와 객체의 정의와 용도 / 231
2.2 객체와 인스턴스 / 232
2.3 객체의 구성요소 - 속성과 기능 / 233
2.4 인스턴스의 생성과 사용 / 234
2.5 객체 배열 / 241
2.6 클래스의 또 다른 정의 / 242
3. 변수와 메서드 / 246
3.1 선언위치에 따른 변수의 종류 / 246
3.2 클래스변수와 인스턴스변수 / 247
3.3 메서드 / 249
3.4 메서드의 선언과 구현 / 252
3.5 메서드의 호출 / 254
3.6 return문 / 258
3.7 JVM의 메모리구조 / 261
3.8 기본형 매개변수와 참조형 매개변수 / 264
3.9 참조형 반환타입 / 268
3.10 재귀호출(recursive call) / 270
3.11 클래스 메서드(static메서드)와 인스턴스 메서드 / 278
3.12 클래스 멤버와 인스턴스 멤버간의 참조와 호출 / 280
4. 오버로딩(overloading) / 283
4.1 오버로딩이란? / 283
4.2 오버로딩의 조건 / 283
4.3 오버로딩의 예 / 283
4.4 오버로딩의 장점 / 285
4.5 가변인자(varargs)와 오버로딩 / 287
5. 생성자(constructor) / 291
5.1 생성자란? / 291
5.2 기본 생성자(default constructor) / 292
5.3 매개변수가 있는 생성자 / 294
5.4 생성자에서 다른 생성자 호출하기 - this(), this / 295
5.5 생성자를 이용한 인스턴스의 복사 / 298

6. 변수의 초기화 / 300
6.1 변수의 초기화 / 300
6.2 명시적 초기화(explicit initialization) / 301
6.3 초기화 블럭(initialization block) / 302
6.4 멤버변수의 초기화 시기와 순서 / 304

Chapter 7 객체지향 프로그래밍 II
1. 상속(inheritance) / 310
1.1 상속의 정의와 장점 / 310
1.2 클래스간의 관계 - 포함관계 / 316
1.3 클래스간의 관계 결정하기 / 317
1.4 단일상속(single inheritance) / 324
1.5 Object클래스 - 모든 클래스의 조상 / 325
2. 오버라이딩(overriding) / 327
2.1 오버라이딩이란? / 327
2.2 오버라이딩의 조건 / 328
2.3 오버로딩 vs. 오버라이딩 / 329
2.4 super / 330
2.5 super() - 조상 클래스의 생성자 / 332
3. package와 import / 336
3.1 패키지(package) / 336
3.2 패키지의 선언 / 337
3.3 import문 / 340
3.4 import문의 선언 / 340
3.5 static import문 / 342
4. 제어자(modifier) / 344
4.1 제어자란? / 344
4.2 static - 클래스의, 공통적인 / 344
4.3 final - 마지막의, 변경될 수 없는 / 345
4.4 abstract - 추상의, 미완성의 / 347
4.5 접근 제어자(access modifier) / 348
4.6 제어자(modifier)의 조합 / 353
5. 다형성(polymorphism) / 354
5.1 다형성이란? / 354
5.2 참조변수의 형변환 / 357
5.3 instanceof연산자 / 362
5.4 참조변수와 인스턴스의 연결 / 364
5.5 매개변수의 다형성 / 367
5.6 여러 종류의 객체를 배열로 다루기 / 370
6. 추상클래스(abstract class) / 375
6.1 추상클래스란? / 375
6.2 추상메서드(abstract method) / 376
6.3 추상클래스의 작성 / 377
7. 인터페이스(interface) / 381
7.1 인터페이스란? / 381
7.2 인터페이스의 작성 / 381
7.3 인터페이스의 상속 / 382
7.4 인터페이스의 구현 / 382
7.5 인터페이스를 이용한 다중상속 / 385
7.6 인터페이스를 이용한 다형성 / 387
7.7 인터페이스의 장점 / 390
7.8 인터페이스의 이해 / 397
7.9 디폴트 메서드와 static메서드 / 401
8. 내부 클래스(inner class) 403
8.1 내부 클래스란? / 403
8.2 내부 클래스의 종류와 특징 / 404
8.3 내부 클래스의 선언 / 404
8.4 내부 클래스의 제어자와 접근성 / 405
8.5 익명 클래스(anonymous class) / 410

Chapter 8 예외처리(Exception Handling)
1. 예외처리(exception handling) / 414
1.1 프로그램 오류 / 414
1.2 예외 클래스의 계층구조 / 415
1.3 예외처리하기 - try-catch문 / 416
1.4 try-catch문에서의 흐름 / 420
1.5 예외의 발생과 catch블럭 / 421
1.6 예외 발생시키기 / 425
1.7 메서드에 예외 선언하기 / 427
1.8 finally블럭 / 434
1.9 자동 자원 반환 - try-with-resources문 / 436
1.10 사용자정의 예외 만들기 / 439
1.11 예외 되던지기(exception re-throwing) / 442
1.12 연결된 예외(chained exception) / 444

Chapter 9 java.lang패키지와 유용한 클래스
1. java.lang패키지 / 450
1.1 Object클래스 / 450
1.2 String클래스 / 464
1.3 StringBuffer클래스와 StringBuilder클래스 / 477
1.4 Math클래스 / 483
1.5 래퍼(wrapper) 클래스 / 490
2. 유용한 클래스 / 496
2.1 java.util.Objects클래스 / 496
2.2 java.util.Random클래스 / 500
2.3 정규식(Regular Expression) - java.util.regex패키지 / 505
2.4 java.util.Scanner클래스 / 510
2.5 java.util.StringTokenizer클래스 / 514
2.6 java.math.BigInteger클래스 / 518
2.7 java.math.BigDecimal클래스 / 521

Chapter 10 날짜와 시간 & 형식화
1. 날짜와 시간 / 528
1.1 Calendar와 Date / 528

2. 형식화 클래스 / 540
2.1 DecimalFormat / 540
2.2 SimpleDateFormat / 544
2.3 ChoiceFormat / 548
2.4 MessageFormat / 549
3. java.time패키지 / 552
3.1 java.time패키지의 핵심 클래스 / 552
3.2 LocalDate와 LocalTime / 555
3.3 Instant / 560
3.4 LocalDateTime과 ZonedDateTime / 561
3.5 TemporalAdjusters / 565
3.6 Period와 Duration / 567
3.7 파싱과 포맷 / 572

Chapter 11 컬렉션 프레임웍
1. 컬렉션 프레임웍(Collection Framework) / 578
1.1 컬렉션 프레임웍의 핵심 인터페이스 / 578
1.2 ArrayList / 584
1.3 LinkedList / 596
1.4 Stack과 Queue / 604
1.5 Iterator, ListIterator, Enumeration / 614
1.6 Arrays / 624
1.7 Comparator와 Comparable / 628
1.8 HashSet / 631
1.9 TreeSet / 638
1.10 HashMap과 Hashtable / 644
1.11 TreeMap / 654
1.12 Properties / 658
1.13 Collections / 664
1.14 컬렉션 클래스 정리 & 요약 / 667

Chapter 12 지네릭스, 열거형, 애너테이션
1. 지네릭스(Generics) / 670
1.1 지네릭스란? / 670
1.2 지네릭 클래스의 선언 / 670
1.3 지네릭 클래스의 객체 생성과 사용 / 674
1.4 제한된 지네릭 클래스 / 676
1.5 와일드 카드 / 678
1.6 지네릭 메서드 / 684
1.7 지네릭 타입의 형변환 / 687
1.8 지네릭 타입의 제거 / 689
2. 열거형(enums) / 691
2.1 열거형이란? / 691
2.2 열거형의 정의와 사용 / 692
2.3 열거형에 멤버 추가하기 / 695
2.4 열거형의 이해 / 698

3. 애너테이션(annotation) / 702
3.1 애너테이션이란? / 702
3.2 표준 애너테이션 / 703
3.3 메타 애너테이션 / 711
3.4 애너테이션 타입 정의하기 / 715

Chapter 13 쓰레드(Thread)
1. 프로세스와 쓰레드 / 722
2. 쓰레드의 구현과 실행 / 724
3. start()와 run() / 728
4. 싱글쓰레드와 멀티쓰레드 / 732
5. 쓰레드의 우선순위 / 738
6. 쓰레드 그룹(thread group) / 741
7. 데몬 쓰레드(daemon thread) / 744
8. 쓰레드의 실행제어 / 748
9. 쓰레드의 동기화 / 767
9.1 synchronized를 이용한 동기화 / 767
9.2 wait()과 notify() / 771
9.3 Lock과 Condition을 이용한 동기화 / 779
9.4 volatile / 786
9.5 fork & join 프레임웍 / 788

Chapter 14 람다와 스트림
1. 람다식 / 794
1.1 람다식이란? / 794
1.2 람다식 작성하기 / 795
1.3 함수형 인터페이스(Functional Interface) / 797
1.4 java.util.function패키지 / 803
1.5 Function의 합성과 Predicate의 결합 / 809
1.6 메서드 참조 / 813
2. 스트림(stream) / 815
2.1 스트림이란? / 815
2.2 스트림 만들기 / 819
2.3 스트림의 중간연산 / 824
2.4 Optional〈T〉와 OptionalInt / 837
2.5 스트림의 최종연산 / 842
2.6 collect() / 846
2.7 Collector구현하기 / 862
2.8 스트림의 변환 / 864

Chapter 15 입출력(I/O)
1. 자바에서의 입출력 / 868
1.1 입출력이란? / 868
1.2 스트림(stream) / 868
1.3 바이트기반 스트림 - InputStream, OutputStream / 869
1.4 보조스트림 / 871
1.5 문자기반 스트림 - Reader, Writer / 872
2. 바이트기반 스트림 / 874
2.1 InputStream과 OutputStream / 874
2.2 ByteArrayInputStream과 ByteArrayOutputStream / 875
2.3 FileInputStream과 FileOutputStream / 879
3. 바이트기반의 보조스트림 / 882
3.1 FilterInputStream과 FilterOutputStream / 882
3.2 BufferedInputStream과 BufferedOutputStream / 883
3.3 DataInputStream과 DataOutputStream / 886
3.4 SequenceInputStream / 892
3.5 PrintStream / 894
4. 문자기반 스트림 / 898
4.1 Reader와 Writer / 898
4.2 FileReader와 FileWriter / 899
4.3 PipedReader와 PipedWriter / 901
4.4 StringReader와 StringWriter / 903
5. 문자기반의 보조스트림 / 904
5.1 BufferedReader와 BufferedWriter / 904
5.2 InputStreamReader와 OutputStreamWriter / 905
6. 표준입출력과 File / 907
6.1 표준입출력 - System.in, System.out, System.err / 907
6.2 표준입출력의 대상변경 - setOut(), setErr(), setIn() / 909
6.3 RandomAccessFile / 911
6.4 File / 915
7. 직렬화(Serialization) / 934
7.1 직렬화란? / 934
7.2 ObjectInputStream과 ObjectOutputStream / 935
7.3 직렬화가 가능한 클래스 만들기 - Serializable, transient / 937
7.4 직렬화가능한 클래스의 버전관리 / 943

Chapter 16 네트워킹(Networking)
1. 네트워킹(Networking) / 946
1.1 클라이언트/서버(client/sever) / 946
1.2 IP주소(IP address) / 948
1.3 InetAddress / 949
1.4 URL(Uniform Resource Location) / 951
1.5 URLConnection / 954
2. 소켓 프로그래밍 / 959
2.1 TCP와 UDP / 959
2.2 TCP소켓 프로그래밍 / 960
2.3 UDP소켓 프로그래밍 / 978

[출판사 서평]
자바 프로그래머로써 반드시 알아야하는 것을 모두 담은책

저자의 오랜 실무경험과 강의 그리고 12년간 온라인 카페(네이버 대표카페)를 운영하면서 강의한 내용을 책으로 엮은 것이기 때문에 자바를 처음 배우는 회원들의 의견과 궁금한 점들을 빠짐없이 담고 있다. 그래서 자바를 시작하는 사람들의 입장에서 쓴 책이라 할 수 있다.

자바를 소개하는데 그치지 않고 프로그래머로써 꼭 알아야하는 내용들을 체계적으로 정리하였으며 200페이지에 달하는 지면을 객체지향개념에 할애함으로써 이 책 한 권이면 객체지향개념을 완전히 이해할 수 있도록 원리중심으로 설명하고 있다.

뿐만 아니라 자바의 최신 기능인 람다와 스트림을 상세히 소개하고 있으며, 그 밖에 자바의 최신버젼인 Java8의 새로운 기능들을 자세히 설명하고 있다.

그 밖에도 다른 서적들이 소홀히 다루는 지네릭스(generics), 애너테이션(annotation), 쓰레드(thread)와 같은 부분도 기초부터 응용까지 상세히 다룰 수 있다.

저자가 직접 인터넷 카페를 통해 동영상 강좌를 지속적으로 업데이트하여 제공하고 질문게시판을 운영하기 때문에 독자들이 혼자서도 충분히 학습할 수 있도록 다방면으로 배려하고 있다.

이처럼 철저하게 독자의 입장에서 생각하고 독자를 배려하는 마음과 노력이 느껴지는 책이다.

그 외에도 2판에서 부족했던 설명과 그림, 예제들을 보충하고 오타를 거의 찾아보기 힘들정도로 정성들여 점검하였다.

- Java의 정석 1판의 부족한 부분(그림, 예제, 설명, 오타)을 개선하였습니다.
- 각 장(chapter)마다 연습문제를 추가하였습니다.
- 동영상 강좌를 무료로 제공합니다.
- 문답게시판을 통해 책관련 질문을 상세히 답변해드립니다.





상품결제정보

고액결제의 경우 안전을 위해 카드사에서 확인전화를 드릴 수도 있습니다. 확인과정에서 도난 카드의 사용이나 타인 명의의 주문등 정상적인 주문이 아니라고 판단될 경우 임의로 주문을 보류 또는 취소할 수 있습니다.
주문시 입력한 입금자명과 실제입금자의 성명이 반드시 일치하여야 하며, 7일 이내로 입금을 하셔야 하며 입금되지 않은 주문은 자동취소 됩니다.

배송정보

  • 배송 방법 : 택배
  • 배송 지역 : 전국지역
  • 배송 비용 : 2,500원
  • 배송 기간 : 1일 ~ 3일
  • 배송 안내 : 산간벽지나 도서지방은 별도의 추가금액을 지불하셔야 하는 경우가 있습니다.
    고객님께서 주문하신 상품은 입금 확인후 배송해 드립니다. 다만, 상품종류에 따라서 상품의 배송이 다소 지연될 수 있습니다.

교환 및 반품정보

교환 및 반품이 가능한 경우
- 상품을 공급 받으신 날로부터 7일이내 단, 가전제품의 경우 포장을 개봉하였거나 포장이 훼손되어 상품가치가 상실된 경우에는 교환/반품이 불가능합니다.
- 공급받으신 상품 및 용역의 내용이 표시.광고 내용과 다르거나 다르게 이행된 경우에는 공급받은 날로부터 3월이내, 그사실을 알게 된 날로부터 30일이내

교환 및 반품이 불가능한 경우
- 고객님의 책임 있는 사유로 상품등이 멸실 또는 훼손된 경우. 단, 상품의 내용을 확인하기 위하여 포장 등을 훼손한 경우는 제외
- 포장을 개봉하였거나 포장이 훼손되어 상품가치가 상실된 경우
  (예 : 가전제품, 식품, 음반 등, 단 액정화면이 부착된 노트북, LCD모니터, 디지털 카메라 등의 불량화소에 따른 반품/교환은 제조사 기준에 따릅니다.)
- 고객님의 사용 또는 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우 단, 화장품등의 경우 시용제품을 제공한 경우에 한 합니다.
- 시간의 경과에 의하여 재판매가 곤란할 정도로 상품등의 가치가 현저히 감소한 경우
- 복제가 가능한 상품등의 포장을 훼손한 경우 (자세한 내용은 고객만족센터 1:1 E-MAIL상담을 이용해 주시기 바랍니다.)


※ 고객님의 마음이 바뀌어 교환, 반품을 하실 경우 상품반송 비용은 고객님께서 부담하셔야 합니다. (색상 교환, 사이즈 교환 등 포함)

문의사항

상단 메뉴에 있는 "공지사항"을 클릭하셔서 상품Q&A 또는 자유게시판을 이용해주세요. 기타 문의사항이 있을 경우 02-856-3707로 연락주세요. 업무시간 10:00~18:00 / 점심시간 12:00~13:00 /토요일 및 법정공휴일 휴무

WORLD SHIPPING

PLEASE SELECT THE DESTINATION COUNTRY AND LANGUAGE :

GO
close