HOME > Detail View

Detail View

JAVA를 지배하는 핵심원리

JAVA를 지배하는 핵심원리 (Loan 37 times)

Material type
단행본
Personal Author
前橋和彌, 저
Title Statement
JAVA를 지배하는 핵심원리 / 마에바시 가즈야 저.
Publication, Distribution, etc
서울 :   영진닷컴 ,   2003.  
Physical Medium
413 p. : 삽도 ; 23 cm.
Series Statement
표준프로그래머 시리즈
Varied Title
Java謎+落とし穴 徹底解明
ISBN
8931424612
General Note
색인수록  
Bibliography, Etc. Note
참고문헌수록
000 00945namccc200325 k 4500
001 000000842675
005 20100806070143
007 ta
008 031112s2003 ulka 001a kor
020 ▼a 8931424612 ▼g 13000 : ▼c \16000
035 ▼a KRIC08621950
040 ▼a 211014 ▼d 999999 ▼d 211009
041 1 ▼a kor ▼h jpn
049 1 ▼l 111253183
082 0 4 ▼a 005.133 ▼2 21
090 ▼a 005.133 ▼b J41 2003zzg
100 1 ▼a 前橋和彌, ▼e▼0 AUTH(211009)53021
245 1 0 ▼a JAVA를 지배하는 핵심원리 / ▼d 마에바시 가즈야 저.
246 1 9 ▼a Java謎+落とし穴 徹底解明
260 ▼a 서울 : ▼b 영진닷컴 , ▼c 2003.
300 ▼a 413 p. : ▼b 삽도 ; ▼c 23 cm.
440 0 0 ▼a 표준프로그래머 시리즈
500 ▼a 색인수록
504 ▼a 참고문헌수록
900 1 1 ▼a 마에바시 가즈야
940 ▼a JAVA 수수께기+함정 철저해명
940 ▼a 자바를 지배하는 핵심원리
940 ▼a 자바미플러스락또시혈 철저해명
940 ▼a 자바 수수께기 플러스 함정 철저해명

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Main Library/Monographs(3F)/ Call Number 005.133 J41 2003zzg Accession No. 111253183 Availability Available Due Date Make a Reservation Service B M
No. 2 Location Science & Engineering Library/Stacks 5(Eastern Books)/ Call Number 005.133 J41 2003zzg Accession No. 121104078 Availability Available Due Date Make a Reservation Service B M
No. 3 Location Science & Engineering Library/Stacks 5(Eastern Books)/ Call Number 005.133 J41 2003zzg Accession No. 121104079 Availability Available Due Date Make a Reservation Service B M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Main Library/Monographs(3F)/ Call Number 005.133 J41 2003zzg Accession No. 111253183 Availability Available Due Date Make a Reservation Service B M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Stacks 5(Eastern Books)/ Call Number 005.133 J41 2003zzg Accession No. 121104078 Availability Available Due Date Make a Reservation Service B M
No. 2 Location Science & Engineering Library/Stacks 5(Eastern Books)/ Call Number 005.133 J41 2003zzg Accession No. 121104079 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

자바를 한번쯤 접해본 프로그래머들을 대상으로 자바 언어, 특히 객체지향 프로그래밍 방식에 대한 사항을 깊이 있게 생각해 보도록 유도한다. 객체 지향을 한번 쯤 접해봤지만 실제 프로그래밍 과정에서는 사용하기 어려워 하는 사람, 객체 지향 프로그래밍 방식의 진짜 의미에 대해 알고 싶은 독자들을 대상으로 한다.

저자는 C와 C++을 많이 접해본 독자를 가정하고 자바 언어는 C++과 어떻게 다른지, 자바의 객체 지향 방식은 어떤 특징이 있는지, 정말 자바에는 포인터라는 개념이 존재하지 않는지 여러 사례와 프로그램 예제들을 통해서 제시하고 독자들과 함께 생각해본다.

단순한 객체의 사용이 아니라, 자바 언어에서 객체는 어떻게 다루어지고 관리되는지, 메모리의 사용은 어떻게 되는지, 자바에서의 '참조'란 어떤 의미를 갖는지 깊이 있는 부분들을 다루고 있으며, 자바 언어를 사용하면서 흔히 하게 되는 실수에 대한 내용도 함께 배울 수 있다.


Information Provided By: : Aladin

Author Introduction

마에바시 가즈야(지은이)

1969년 일본 아이치현 출생. 나고야 시의 소프트웨어 회사인 츄부 소프트엔지니어링(주)에 근무하고 있다. 지은 책으로는 , ^lt;C언어 학습 철저 입문>등이 있다.

Information Provided By: : Aladin

Table of Contents


목차
0. 이 책의 목표와 구성 - Introduction = 13
 0.1 대상 독자와 목표 = 14
  0.1.1 이 책의 구성 = 16
 0.2 Java에 관한 오해와 지나친 기대 = 19
  0.2.1 Java의 장점 = 19
  0.2.2 Java는 간단한가? = 20
  0.2.3 Java는 세련된 언어인가? = 21
 0.3 객체 지향에 관련된 오해 = 23
  0.3.1 은총알은 없다 = 23
  0.3.2 객체 지향에도 「정답」은 없다 = 23
  0.3.3 객체 지향의 장점은 무엇인가? = 24
 0.4 예습편 = 26
  0.4.1 컴파일러 에러를 놓치지 않는다 = 26
  0.4.2 Java 콘솔을 살펴봐야 한다 = 29
  0.4.3 예외를 버리지 않는다 = 30
  0.4.4 참고 URL = 31
1. 재도전! - 객체 지향 = 35
 1.1 객체 지향의 길[모듈편] = 36
  1.1.1 그래픽 모듈의 사양 = 36
  1.1.2 비객체 지향적 관점에서 고찰한다 = 38
  1.1.3 모듈과 정보 은폐 = 40
  1.1.4 멀티 윈도우화 = 41
  1.1.5 「객체 지향」으로 만들어 본다 = 43
  1.1.6 클래스의 선언 = 46
  1.1.7 클래스와 인스턴스 = 48
  1.1.8 숨겨진 인수 - this = 50
  1.1.9 「객체에 일을 시킨다」는 발상 = 54
 1.2 객체 지향의 길[구조체편] = 60
  1.2.1 구조체의 문제점 = 60
  1.2.2 생성자(컨스트럭터, constructor) = 61
  1.2.1 액세서(accessor)에 의한 정합성 유지 = 63
 1.3 static - 객체 지향의 「구멍」 = 70
  1.3.1 일반적인 함수의 작성 방법 = 70
  1.3.2 글로벌 변수 만드는 법 = 74
  1.3.3 이름이 있는 상수를 만드는 법 = 77
  1.3.4 static의 활용 = 78
  1.3.5 main의 위치 정립 = 81
2. Java는 포인터의 언어이다 - Java에는 포인터밖에 없다 = 85
 2.1 객체와 포인터 = 86
  2.1.1 객체의 생성 = 87
  2.1.2 C/C++의 포인터와 Java의 포인터와의 차이점 = 93
  2.1.3 프리미티브형과 참조형 = 95
  2.1.4 null = 98
  2.1.5 객체의 복사 = 101
  2.1.6 객체의 비교 = 102
  2.1.7 참조형 필드 = 106
  2.1.8 포인터와 캡슐화 = 108
  2.1.9 객체의 복사 - 두번째 = 109
  2.1.10 immutable 객체 = 111
 2.2 배열과 포인터 = 114
  2.2.1 프리미티브형 배열 = 114
  2.2.2 final과 배열 = 120
  2.2.3 클래스형 배열 = 121
  2.2.4 다차원 배열 = 123
 2.3 파라미터(인수) 건네주기 = 127
  2.3.1 값 건네주기(call by value) = 127
  2.3.2 포인터를 되돌린다 = 130
  2.3.3 Java에서는 swap()을 만들 수 없다 = 134
  2.3.4 메소드에서 여러 개의 값을 결과로 반환하고 싶을 때 = 134
 2.4 Java의 메모리 모델 = 140
  2.4.1 스택(Stack), Static, 힙(Heap) = 140
  2.4.2 객체와 힙과 포인터 = 144
  2.4.3 가비지 컬렉터 = 144
  2.4.4 파이널라이저(finalizer) = 148
  2.4.5 왜 변수의 포인터를 취할 수 없는가? = 150
 2.5 어째서 Java는 포인터의 언어인가? = 153
  2.5.1 생성자의 파라미터 문제 = 153
  2.5.2 대입 연산자와 복사 생성자의 문제 = 157
  2.5.3 상속의 문제 = 158
  2.5.4 포인터만 있으면 된다 = 160
 2.6 정리 - 결국 Java에는 포인터가 있는 것인가, 없는 것인가 = 161
3. 객체 지향 두 번째 이야기 - 상속과 인터페이스 = 165
 3.1 상속 = 166
  3.1.1 드로우 도구의 데이터 모델 = 166
  3.1.2 상속한다 = 169
  3.1.3 상속과 생성자 = 172
 3.2 메소드 오버라이드 = 175
  3.2.1 메소드 오버라이드를 사용하지 않는 경우 = 175
  3.2.2 다운 캐스트 = 177
  3.2.3 instanceof에 의한 방법의 문제점 = 178
  3.2.4 메소드 오버라이드에 의한 해결 = 179
  3.2.5 abstract/무지정/final 메소드 = 183
  3.2.6 abstract/무지정/final 클래스 = 185
  3.2.7 Object 클래스 = 186
 3.3 C에서 상속을 실현해 본다 = 189
  3.3.1 서브 클래스 = 189
  3.3.2 메소드 오버라이드 = 192
  3.3.3 리플렉션(Reflection) = 203
  3.3.4 Class 클래스 = 205
 3.4 인터페이스 = 207
  3.4.1 인터페이스는 다중 상속의 대용품인가? = 207
  3.4.2 그래픽 모듈을 인터페이스화한다 = 208
  3.4.3 2개 이상의 인터페이스를 implements한다 = 213
 3.5 상속을 어디까지 어떻게 사용할 것인가? = 215
  3.5.1 상속으로 클래스를 재이용한다 = 215
  3.5.2 사례 연구 - Point2D에 기능을 추가한다 = 217
  3.5.3 is a와 has a = 219
  3.5.4 사례 연구 - 배열과 스택 = 220
  3.5.5 사례 연구 - 학생과 사회인 = 222
  3.5.6 컴포지션과 위임 = 225
  3.5.7 사례 연구 - 원과 타원 = 226
  3.5.8 abstract 클래스와 인터페이스 = 227
 3.6 X-Draw = 230
  3.6.1 전체 소스 = 230
  3.6.2 사용법과 Applet 주변 = 239
  3.6.3 Shape 주변 = 241
  3.6.4 그리기 주변 = 242
  3.6.5 Canvas와 Command = 243
  3.6.6 도형을 추가하는 경우 = 244
  3.6.7 정말 draw()를 Shape에 넣어도 되는가? = 245
4. 패키지와 액세스 제어 - 수수께끼 사양의 완전 해설 = 249
 4.1 패키지 = 250
  4.1.1 패키지는 「계층 구조」인가? = 250
  4.1.2 클래스의 「완전 한정 이름」 = 253
  4.1.3 import란 무엇인가? = 255
  4.1.4 클래스 패스와 디렉토리 = 259
 4.2 액세스 제어 = 264
  4.2.1 멤버의 액세스 제어 = 264
  4.2.2 멤버의 액세스 제어는 「클래스 단위」이다 = 265
  4.2.3 클래스의 액세스 제어 = 267
  4.2.4 인터페이스 멤버의 경우 = 267
5. 그 밖의 중요한 기능 = 269
 5.1 Thread = 270
  5.1.1 Thread란 무엇인가 = 270
  5.1.2 객체를 독립된 Thread에서 움직인다 = 271
  5.1.3 Thread는 객체와 직교하는 개념이다 = 273
  5.1.4 Thread와 Runnable의 관계 = 275
  5.1.5 synchronized = 278
  5.1.6 객체로 돌아간다 = 281
 5.2 예외 처리 = 285
  5.2.1 기존 방법의 결점 = 285
  5.2.2 Java의 예외 처리 기구 = 287
  5.2.3 3 종류의 예외 = 292
  5.2.4 예외 처리를 어디까지 어떻게 사용할 것인가? = 295
 5.3 직렬화 = 300
  5.3.1 직렬화란 무엇인가? = 300
  5.3.2 Serializable = 302
  5.3.3 transient 필드 = 304
  5.3.4 transient 필드의 복원 = 305
 5.4 컬렉션 클래스 라이브러리 = 310
  5.4.1 컬렉션 클래스란 무엇인가? = 310
  5.4.2 genericity가 없다 - Java의 최대 결함 = 311
  5.4.3 Wrapper 클래스 = 314
  5.4.4 Iterator = 315
 5.5 중첩 클래스(nested class) = 318
  5.5.1 중첩 클래스의 예 = 318
  5.5.2 내부 클래스는 「부모」의 참조를 갖고 있다 = 319
  5.5.3 static 지정 중첩 클래스 = 322
  5.5.4 로컬 내부 클래스와 무명 클래스 = 323
6. 혼란의 근원 - 이래도 Java가 간단한가? = 327
 6.1 메소드 오버로드 = 328
  6.1.1 메소드 오버로드란 무엇인가? = 328
  6.1.2 오버로드는 「정적」이다 = 330
  6.1.3 혼동되는 경우 = 332
 6.2 상속ㆍ오버라이드ㆍ은폐 = 335
  6.2.1 서브 클래스에서 동명의 멤버를 선언한다 = 335
  6.2.2 인스턴스 필드는 컴파일시 선택된다 = 337
  6.2.3 static 멤버를 인스턴스에서 참조한다 = 340
  6.2.4 static 멤버도 컴파일시 선택된다 = 340
  6.2.5 정리 = 345
  6.2.6 static 멤버를 인스턴스를 경유하여 참조해서는 안 된다 = 345
  6.2.7 super = 346
 6.3 상속에 관한 또 다른 문제 = 349
  6.3.1 오버라이드와 액세스 제어 = 349
  6.3.2 오버라이드와 예외처리(Exception) = 350
  6.3.3 생성자에서 오버라이드된 메소드를 호출하면 = 353
 6.4 배열에 관한 또 다른 문제 = 355
  6.4.1 상속 관계가 있는 클래스의 배열은 상속 관계에 있다 = 355
  6.4.2 ArrayStoreException = 356
  6.4.3 배열은 자신의 형식을 알고 있다 = 357
  6.4.4 예 : 컬렉션에서 배열을 취득하는 경우 = 358
 6.5 clone()과 Cloneable = 360
  6.5.1 clone() = 360
  6.5.2 clone()은 protected이다 = 362
  6.5.3 Cloneable 인터페이스 = 364
7. 테크닉 - Java 기능의 적용 사례 = 367
 7.1 대규모 개발에서 인터페이스를 분리한다 = 368
  7.1.1 인터페이스 분리의 필요성 = 368
  7.1.2 구체적 방법 = 369
  7.1.3 인수의 문제 = 371
 7.2 열거형을 만든다 = 373
  7.2.1 왜 열거형이 필요한가? = 373
  7.2.2 열거형을 만든다 = 376
 7.3 차트 구조의 복사에 직렬화를 이용한다 = 379
  7.3.1 clone()의 세계 = 379
  7.3.2 직렬화를 이용한다 = 380
 7.4 디버그 라이트 = 382
  7.4.1 디버그 라이트를 컴파일시 없앤다 = 382
  7.4.2 클래스에 의한 ON/OFF = 383
 7.5 컬렉션 클래스를 실용적으로 사용한다 = 388
  7.5.1 컴포지션을 이용한다 = 388
  7.5.2 구현 예 = 389
 8. 함정 - Java의 취약한 언어 사양 = 391
  8.1 메소드의 이름을 잘못 입력한 경우 = 392
  8.2 가인수를 잘못 입력한 경우 = 395
  8.3 생성자에 void를 붙인 경우 = 397
  8.4 클래스에서 인터페이스로 형식을 변환한다 = 399
  8.5 C에서 가져온 결점 = 402
참고문헌 = 407
저자약력 = 407
Index = 408


New Arrivals Books in Related Fields

Ramamurthy, Bina (2021)
윤관식 (2020)