| 000 | 00000cam c2200205 c 4500 | |
| 001 | 000000724253 | |
| 005 | 20170601115212 | |
| 007 | ta | |
| 008 | 010507s2001 ulka 001c kor | |
| 020 | ▼a 8988723201 ▼g 13000 | |
| 035 | ▼a KRIC07973499 | |
| 040 | ▼a 211046 ▼c 211046 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h eng |
| 049 | 1 | ▼l 111202386 ▼f 개가 |
| 082 | 0 4 | ▼a 005.133 ▼2 21 |
| 085 | ▼a 005.133 ▼2 DDCK | |
| 090 | ▼a 005.133 ▼b 2001zzm | |
| 100 | 1 | ▼a Friesen, Jeff |
| 245 | 1 0 | ▼a Java 2 by example / ▼d Geoff Friesen 저 ; ▼e 김태훈 역 |
| 246 | 0 9 | ▼a Java 2 by example |
| 260 | ▼a 서울 : ▼b 마이트press, ▼c 2001 | |
| 300 | ▼a 593 p. : ▼b 삽화 ; ▼c 24 cm + ▼e 전자 광디스크 (CD-ROM) 1매 | |
| 500 | ▼a 부록: 예약어, 연산자 우선 순위 | |
| 500 | ▼a 색인수록 | |
| 650 | 0 | ▼a Java (Computer program language) |
| 700 | 1 | ▼a 김태훈, ▼e 역 |
| 900 | 1 0 | ▼a 프리센, 제프, ▼e 저 |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 학술정보관(CDL)/B1 국제기구자료실(보존서고)/ | 청구기호 005.133 2001zzm | 등록번호 111202386 (6회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
이 책은 전문 프로그래머는 물론 자바를 좀더 배우고자하는 비프로그래머, 초보자를 위해 쓰여졌다. 물론 기본적인 인터넷, 프로그래밍에 대한 개념이 있다면 더 이해하기 쉬울 것이다.
이 책은 예제를 통하여 자바를 배울 수 있도록 구성되어 있다. 시작부분부터 유용한 예제들을 이용하여 각 개념들을 설명한다. 또한 '팁'을 이용하여 조금 더 효율적으로 프로그램을 작성할 수 있도록 하고, '노트'를 이용하여 개념을 조금 더 자세하게 설명하며, '주의'를 통하여 혹시 빠질지도 모르는 함정들을 알려준다.
각 장의 끝 부분에서는 해당 장에서 배운 내용을 정리하고 다음 장에서 배울 내용들을 미리 살펴볼 수 있도록 하였다. 마지막 장에서는 배운 내용들을 응용하여 큰 규모의 애플리케이션을 작성해 볼 수 있도록 한다. 책을 다 공부하고 나면 자신 있게 자바 애플리케이션을 만들 수 있도록 구성했다.
책은 크게 '자바의 소개', '자바 언어 탐구', '클래스 라이브러리 탐구', '사례연구'로 구성되어 있다. '자바의 소개' 부분에서는 자바의 실체와 유래에 대해서 설명한다. 자바개발도구(JDK)에 관해서 알아보고 자바 애플릿과 응용프로그램을 생성하는 방법을 배워본다.
'자바언어탐구' 부분에서는 자바언어의 안팎을 살펴본다.주석문이나 연산자와 같은 기본적인 자바 언어의 문법에서부터 패키지와 같은 고급 개념에 이르기까지 설명한다. '클래스 라이브러리 탐구' 부분에서는 문자열의 관리, 테이터 구조, JFC 와 AWT, 멀티 쓰레딩, 파일 그리고 스트림에 대해서 알아본다.
'사례연구' 부분에서는 자바 프로그램의 실제를 구현하는 데 유용한 정보를 제공한다. 유용한 컨텍트 매니저 프로그램을 이용하여 자바 소프트웨어를 계획하고 설계하고 구현하는 방법들을 설명한다.
부록으로는 예약어 목록(간단한 자바 언어 예약어 테이블)과 연산자 우선순위 테이블을 제공하며 JAR 파일 관리, 용어해설에 대해서도 부록에 담았다. 부록 CD ROM에는 각 장의 예제 소스 화일과 자바 웹 서버 2.0 트라이얼 버전, 그리고 자바 서블릿 개발자 킷(JSDK) 2.0과 기타 웹 관련 유틸리티들을 수록했다.
정보제공 :
저자소개
Geoff Friesen(지은이)
자바 테크놀러지에 매우 심취한 사람으로 JavaWorld와 Windows TechEdge 등의 잡지에 자바를 이용한 C++ 통합, 국제화, 그리고 자바 플러그-인 등에 관련된 자바 관련 기사들을 게재하고 있습니다. 또한, EDS 관련 프로젝트의 핵심 멤버였으며, 이 프로젝트에서 C++로 작성된 스마트 카드 장치, 암호화, 그리고 전자 결제에 관련된 윈도우 DLL들을 자바 인터페이스 기술을 이용하여 자바 애플릿으로 변환하는 작업을 수행하였다. 직접 자바 버추얼 머신을 이용하여 작업하였으며, 자신만의 자바 클래스 파일 해석기를 만들기도 하였습니다.
김태훈(옮긴이)
자바프로그래밍에 능하며 성균관대 전기전자컴퓨터 공학부에서 박사학위 과정을 수료했다. HowPC, 리눅스 매거진 등에 원고를 실었고 컴퓨터 관련 분야에 10여권의 저서를 집필했다. 현재 한국산업기술원 정보통신센터에서 선임연구원으로 근무하고 있다.
목차
목차 Part Ⅰ 자바의 이해 Chapter 1 자바의 소개 = 22 자바란 무엇인가? = 22 자바는 컴퓨터 언어이다 = 23 자바는 컴파일러다 = 24 자바는 버추얼 머신이다 = 24 자바는 클래스 라이브러리이다 = 25 자바의 역사 = 26 JDK = 28 JDK 버전 = 28 JDK 구하기와 설치 = 29 JDK 둘러보기 = 30 애플리케이션 = 32 애플리케이션 구조 = 32 애플리케이션의 구축과 실행 = 33 예제 = 33 애플릿 = 37 HTML 문서 = 38 Applet Structure = 39 애플릿의 작성과 실행 = 40 예제 = 40 Part Ⅱ 자바 언어 탐구 Chapter 2 데이터 형, 리터럴, 변수 = 46 컴퓨터 언어란 무엇인가? = 46 ASCII에서 Unicode까지 = 47 주석문 = 48 단일문 주석 = 49 다중문 주석 = 49 도큐먼트 = 49 식별자와 예약어 = 50 식별자 = 50 예약어 = 51 데이터 형과 리터럴 = 51 데이터 형 = 52 리터럴 = 54 불린 리터럴 = 54 캐릭터 리터럴 = 54 부동 소수점 리터럴 = 55 정수 리터럴 = 55 문자열 리터럴 = 56 널 리터럴 = 56 변수 = 56 단일 변수 = 56 선언 = 57 초기화 = 57 배열 변수 = 59 선언 = 60 초기화 = 60 인덱싱 = 62 Length 속성 = 62 변수에 이름 붙이기 = 62 Chapter 3 연산자, 표현식, 구문 = 64 연산자 = 64 단일, 이진, 삼진 연산자 = 64 Prefix, Postfix, Infix 연산자 = 65 산술 연산자 = 65 더하기 = 65 빼기 = 66 곱하기 = 66 나누기 = 67 나머지 연산 = 68 후 증가 연산자와 선 증가 연산자 = 68 후 감소 연산자와 선 감소 연산자 = 69 단일 마이너스와 단일 플러스 = 70 배열 인덱스 연산자 = 71 할당 연산자 = 71 비트 처리 연산자 = 72 비트 단위 AND = 72 비트 단위 OR = 72 비트 단위 익스클루시브 OR(Exclusive OR) = 73 비트 단위 왼쪽 이동(Shift left) = 74 비트 단위 부호 확장 오른쪽 이동(Shift right) = 74 비트 단위 제로 확장 오른쪽 이동(Shift right) = 75 비트 단위 보수(Complement) = 75 불린 연산자(Boolean operator) = 75 불린 AND = 76 불린 OR = 76 불린 NOT = 77 캐스트 연산자(Cast Operator) = 77 조건 연산자(Conditional Operator) = 78 논리 연산자(Logical Operator) = 78 단기 순회(Short circuiting)와 부작용 = 79 논리 AND = 80 논리 OR = 80 참조 데이터 형 확인 연산자 = 81 관계 연산자(Relation Operator) = 81 작음(Less Than) = 81 작거나 같음(less Than or Equal To) = 82 큼(Greater Than) = 82 크거나 같음(Greater Then or Equal To) = 83 같음(Equal To) = 83 같지 않음(Not Equal To) = 84 문자열 결합 연산자(String Concatenation Operator) = 84 표현식 = 85 수식 = 86 IEEE 754 특별값 = 86 정확성 = 87 Math 클래스 = 87 블록 = 87 구문 = 88 할당(Assignment) = 88 Break = 89 Continue = 90 Do-while 반복문 = 91 For 반복문 = 91 If 조건문 = 92 If-else 조건문 = 93 중첩된 if 조건문 = 93 Return = 94 Switch = 94 Throw = 96 변수 선언 = 96 While 반복문 = 96 매트릭스 = 97 매트릭스 설치 = 97 매트릭스 컴파일 = 97 매트릭스의 실행 = 99 잠재적인 문제들 = 100 매트릭스 강화 = 100 Chapter 4 캡슐화 : 클래스와 객체 = 102 OOP 탐험 : 캡슐화 = 102 클래스의 선언 = 103 필드와 메쏘드 = 105 필드(Field) = 105 메쏘드 = 109 지역변수 = 115 메쏘드 오버로딩(Overloading) = 116 객체 = 117 객체 생성 = 117 필드 접근 = 119 메쏘드 호출 = 121 메쏘드 스택 호출 = 123 생성자 메쏘드 = 124 객체의 파기 = 129 구성 = 129 DEALERSHIPI = 131 DEALERSHIPI 설치 = 131 DEALERSHIPI의 코드 = 132 DEALERSHIPI 컴파일 = 133 DEALERSHIPI 실행하기 = 134 잠재적인 문제들 = 135 DEALERSHIPI 강화하기 = 135 Chapter 5 수퍼 클래스와 서브 클래스 = 136 OOP 탐구하기 : 상속 = 136 관련 클래스들 = 138 수퍼 클래스 생성자 호출 = 141 오버라이딩 메쏘드 = 144 캐스팅 클래스 = 145 모든 클래스의 근원 = 147 클래스 정보 = 147 복사하기(Cloning) = 148 동일성(Equality) = 153 종료하기(Finalizing) = 156 해시 코드(Hash Codes) = 158 통지와 대기(Notification and waiting) = 158 String 표현 = 158 다중 상속과 인터페이스 = 161 상속과 구성 = 165 DEALERSHIP2 = 165 DEALERSHIP2 설정 = 165 DEALERSHIP2 컴파일하기 = 166 DEALERSHIP2 운영하기 = 167 잠재적인 문제들 = 168 DEALERSHIP2 강화 = 169 Chapter 6 다형성 : 동적 메쏘드 바인딩 = 170 OOP 탐구 : 다형성 = 170 추상 클래스 = 171 런타임 유형 정보 = 178 다형 인터페이스 = 183 다형성과 데이터형/스위치 로직 = 186 DEALERSHIP3 = 192 DEALERSHIP3 설정하기 = 192 DEALERSHIP3 컴파일링 = 192 DEALERSHIP3 구동하기 = 193 잠재적인 문제점들 = 194 DEALERSHIP3 강화 = 195 Chapter 7 이니셜라이저, 파이널라이저, 내부 클래스 = 196 이니셜라이저 = 196 필드와 디폴트값 = 197 클래스 필드 이니셜라이저 = 197 인스턴스 필드 이니셜라이저 = 205 혼합 클래스 필드와 인스턴스 필드 이니셜라이저 = 213 초기화와 상속 = 215 파이널라이저 = 222 쓰레기 모음 = 222 finalize() 메쏘드 = 222 내부 클래스 = 225 정적 내부 클래스 = 226 인스턴스 내부 클래스 = 228 익명 내부 클래스 = 229 Chapter 8 예외 처리 = 232 오류 처리 = 232 왜 프로그램은 오류를 일으키는가? = 232 과거에는 오류들이 어떻게 처리되었는가? = 233 무엇이 예외이고, 에러인가? = 234 클래스 패밀리 = 234 예외 클래스 = 235 에러 클래스 = 240 예외 처리란 무엇인가? = 240 왜 예외 처리인가? = 241 예외 유출 = 241 Try 구문 = 242 확인된 예외와 확인되지 않은 예외들 = 243 Throw 구문 = 243 Throws 절(clause) = 244 예외의 포착 = 244 Catch 절(clause) = 245 다중 Catch 절 = 246 Catch 절로부터의 예외 유출 = 248 청소 = 249 Family 절 = 249 Finally 절로부터의 예외 유출 = 251 특별 이슈들 = 251 생상자와 예외 처리 = 251 예외와 상속 = 253 확인된 예외 조작하기 = 253 책임을 지거나 넘기기 = 259 RuntimeException으로부터 파생되는 것 = 259 CALC = 260 CALC 설치 = 260 CALC 컴파일 = 261 CALC 구동 = 262 잠재적인 문제점들 = 263 CALC 강화 = 264 Part Ⅲ 클래스 라이브러리 탐구 Chapter 9 패키지 = 266 패키지는 무엇인가? = 266 패키지 디렉티브 = 267 import 디렉티브 = 268 CLASSPATH = 271 패키지 이름 설정 = 272 GRAPHICS = 267 패키지 만들기 = 270 패키지 사용하기 = 274 Chapter 10 문자와 문자열 = 286 문자 = 286 Character 클래스 문자 비교 = 281 분류 문자 = 290 문자 변 = 284 문자열(Strings) = 293 String 클래스 = 296 해시 코드 획득 = 296 문자 획득 = 297 현재 길이 획득 = 298 균등성 판단 = 298 영역 균등성 판단 = 299 초기 발생 검색 = 300 최종 발생 검색 = 301 문자열 변환 = 302 문자열 자르기 = 302 문자열의 값 = 303 toString() 메쏘드 = 304 StringBuffer 클래스 = 305 용량 확인 = 306 현재 용량 획득 = 306 현재길이 획득 = 307 새 길이 설정 = 307 문자 추가 = 309 문자 삭제 = 310 문자 삽입 = 310 문자 획득 = 311 문자 대체 = 311 toString() 메쏘드 = 311 StringTokenizer 클래스 = 312 Tokenizing = 313 Chaper 11 데이터 구조, Part 1 = 316 배열 = 316 배열 변수 = 317 동적 메모리 할당 = 318 1차원의 배열 = 318 2차원 배열 = 321 배열 소팅 = 327 배열 검색 = 328 Primitives = 331 불린 클래스(Boolean Class) = 331 바이트 클래스(The Byte Class) = 332 캐릭터 클래스(The Character Class) = 332 더블 클래스(The Double Class) = 333 실수 클래스(The Float Class) = 333 정수 클래스(The Integer Class) = 334 롱 클래스(The Long Class) = 334 쇼트 클래스(The Short Class) = 335 목록 = 336 벡터 = 336 addElement (객체) 메쏘드 = 337 removeElement (객체) 메쏘드 = 337 firstElement () 메쏘드 = 338 lastElement () 메쏘드 = 338 isEmpty () 메쏘드 = 338 contains (객체) 메쏘드 = 339 indexOf (객체) 메쏘드 = 339 elements () 메쏘드 = 339 SPL = 342 SPL 설정 = 343 SPL 컴파일하기 = 343 SPL 구동하기 = 344 잠재적인 문제점들 = 345 SPL 강화 = 345 Chapter 12 데이터 구조, Part 2 = 346 연결 목록 = 346 노드(Nodes) = 347 동적 메모리 할당(Dynamic Memory Allocation) = 348 단일 연결 목록(Singly Linked Lists) = 349 이중 연결 목록(Double Linked Lists) = 361 연결 목록 정렬 = 368 연결 목록 검색 = 371 해시 테이블(Hash Tables) = 374 Hashtable 객체 = 375 put (객체, 객체) 메쏘드 = 376 get (객체) 메쏘드 = 376 isEmpty () 메쏘드 = 377 containsKey (객체) 메쏘드 = 377 remove (객체) 메쏘드 = 378 keys ()와 elements () 메쏘드 = 378 스택 = 380 push (객체) 메쏘드 = 381 pop () 메쏘드 = 381 isEmpty () 메쏘드 = 381 Chapter 13 JFC = 386 AWT = 389 Swing = 394 Java2D = 99 Accessibility = 403 Drag and Drop = 408 Chapter 14 AWT, Part 1 = 410 AWT 그리기 메커니즘 = 410 색상 = 411 Color 클래스 = 411 getRed (), getGreen (), getBlue () 메쏘드 = 412 getRGB () 메쏘드 = 413 brighter (), darker () 메쏘드 = 413 사전 생성 Color 개체들 = 413 Graphics 클래스와 Color 객체들 = 414 글꼴 만들기 = 415 Graphics 클래스와 Font 객체 = 416 그래픽 환경 = 416 getFamily () 메쏘드 = 418 getFontName () 메쏘드 = 419 getSize () 메쏘드 = 419 isBold () 메쏘드 = 419 isItalic () 메쏘드 = 420 isPlain () 메쏘드 = 420 폰트 매트릭스(Metrics) = 420 getAscent () 메쏘드 = 422 getDescent () 메쏘드 = 423 getHeight () 메쏘드 = 423 getLeading () 메쏘드 = 423 StringWidth (String) 메쏘드 = 424 그래픽 = 426 Coordinate System = 426 텍스트 = 427 선과 점 = 428 사각형 = 429 둥근 사각형 = 429 삼차원 사각형 = 431 타원(Ovals) = 432 호 = 433 그림 영역 복사 = 435 이미지 = 435 Image 클래스 = 436 불꽃 = 438 프로젝트 설정 = 439 FIREWORKS 컴파일 = 439 FIREWORKS 구동 = 439 잠재적인 문제점 = 440 FIREWORKS 강화 = 440 Chapter 15 AWT, Part 2 = 442 컴포넌트 작업 = 442 Component 클래스 = 443 버튼(Button) = 445 캔버스(Canvas) = 445 체크박스(Checkbox) = 447 CheckBoxGroup = 448 Choice = 448 레이블(label) = 449 리스트(List) = 450 스크롤 바(Scrollbar) = 452 텍스트 구성 요소(TextComponent) = 447 텍스트 필드(TextField) = 454 텍스트 영역(TextArea) = 455 컨테이너 작업 = 457 Container 클래스 = 457 패널(Panel) = 458 스크롤 페인(ScrollPane) = 461 프레임(Frame) = 463 대화 상자(Dialog) = 465 컴포넌트 설계 = 467 BorderLayout = 468 FlowLayout = 470 레이아웃 결합 = 471 이벤트 핸들링 = 473 계층 모델(The Hierarchical Model) = 473 대표 모델(The Delegation Model) = 474 Chapter 16 멀티쓰레딩 = 478 쓰레드 = 478 Thread 클래스 = 481 start () 메쏘드 = 482 run () 메쏘드 = 482 setName (String) 메쏘드 = 484 getName () 메쏘드 = 484 sleep (long) 메쏘드 = 484 currentThread () 메쏘드 = 485 setPriority (int) 메쏘드 = 485 getPriority () 메쏘드 = 486 런에이블 = 488 Runnable 인터페이스 = 490 동기화 = 492 생산자와 소비자(Producer/Consumer) = 498 필로스 = 505 프로젝트 설치하기 = 507 PHILOS 컴파일 = 507 PHILOS 구동 = 508 PHILOS 강화 = 509 Chapter 17 파일과 스트림 = 512 파일 = 512 File 클래스 = 513 exists () 메쏘드 = 514 canRead () 메쏘드와 canWrite () 메쏘드 = 515 isFile () 메쏘드와 isDirectory () 메쏘드 = 515 isAbsolute () 메쏘드 = 515 getAbsolutePath () 메쏘드 = 516 getName () 메쏘드 = 516 getPath () 메쏘드 = 516 getParent () 메쏘드 = 517 length () 메쏘드 = 517 lastModified () 메쏘드 = 517 list () 메쏘드 = 518 File의 유형 = 519 연속적 접근 파일 = 519 무작위 접근 파일 = 520 RandomAccessFile 클래스 = 520 스트림 = 524 스트림의 유형 = 524 파일 스트림 = 525 데이터 스트림 = 526 파이프 스트림 = 528 표준 I/O = 530 객체 직렬화 = 532 JED = 539 JED 설정 = 540 JED 컴파일 = 540 JED 실행 = 540 잠재적인 문제점 = 542 JED 강화 = 542 Part Ⅳ 사례 연구 Chapter 18 Contact Manager = 544 contact manager 개발 = 544 contact manager란 무엇인가? = 544 필요 조건들 모으기 = 545 GUI의 설계 = 545 작업 공정도(Flow chart) = 545 의사코드(Pseudocode) = 547 소스 코드 = 547 프로젝트 설정 = 564 CM 컴파일 = 565 CM 구동하기 = 565 잠재적인 문제점 = 566 CM 강화하기 = 567 Part Ⅴ 부록 APPENDIX A 예약어 = 570 APPENDIX B 연산자 우선 순위 = 571 APPENDIX C JAR 파일 관리 = 574 APPENDIX D 부가적인 자원들 = 577 APPENDIX 용어 해설 = 588 APPENDIX INDEX
