명품 JAVA PROGRAMMING (개정판)

고객평점
저자황기태 외
출판사항생능출판사, 발행일:2017/01/20
형태사항p.807 46배판:26
매장위치컴퓨터부(B2) , 재고문의 : 051-816-9500
ISBN9788970507644 [소득공제]
판매가격 30,000원  
포인트 600점
배송비결제주문시 결제
절판도서 및 품절도서 입니다 매장으로 문의바랍니다.
재고 0인 도서는 수량 부족으로 발송지연이 예상되니 주문 전 문의바랍니다.

책 소개

▣ 출판사서평

추가되고 보완된 새로운 모습의 개정판!

이 책은 출간된 지 1년 만에 우리나라 거의 모든 대학의 자바 강좌에서 쓰이는 베스트셀러로 각광받고 있다. 또한 일반 독자들 역시 자바 언어를 사용하여 주어진 과제를 해결하고 더 좋은 프로그램을 만들기 위해 이론과 실전을 모두 갖춘 실무서로 주저 없이 이 책을 찾고 있어, 컴퓨터 분야의 베스트셀러로 이름을 올리기도 하였다. 그럼에도 불구하고 초판에서 아쉬웠던 부분과 실무에서 사용하지 않은 일부 내용을 도려내는 등 다음과 같이 더 알찬 내용을 추가하였다.

첫째, 실무에 필요한 for-each 문, Calendar 클래스, MouseWheelEvent 등의 내용을 추가하였다. 또한 연습문제도 추가로 수록하였다.
둘째, 2004년 JDK 1.5 버전 이후에 세상에 나온 제네릭(generics, 일반화)은 그 사용이 점점 늘고, 현재 제네릭 프로그래밍이라는 새로운 패러다임이 정착되고 있어서, 기존에 있던 ‘제레릭과 컬렉션’을 7장으로 옮기고 군더더기를 없애고 정성스럽게 수정하였다.
셋째, 책에서 다루는 이클립스와 JDK를 최신 버전으로 바꾸었고, 본문과 소스의 이해력을 높이기 위해 변화를 주었다.

십여 년에 걸친 자바의 개발 경험과 강의 경험을 모두 쏟아부은 책

전공자나 비전공자를 불문하고 다양한 독자들이 자바 언어를 배우기 쉽도록 책의 내용을 충실히 정리하고 적절한 예제를 준비하였다. 또한 쉽게 책을 접할 수 있도록 그림과 삽화를 삽입하였다. 각 절마다 Check Time 문제를 두어 배운 내용을 확인할 수 있도록 하였고, 연습문제는 이론문제와 실습문제로 나누었다. 연습문제는 홀수 번과 짝수 번을 유사한 문제로 꾸며서 짝수 번은 스스로 풀면서 반복 연습할 수 있도록 구성하였다. 또한 각 장마다 Open Challenge 문제를 두어 학생 스스로 연습할 수 있는 과정을 두었다.

이해하기 쉽고 가슴에 와 닿는 자바 프로그래밍 책

독자들의 마음을 헤아려 가려운 곳을 긁어주고, 필요한 순간에 적절한 지식을 제공하고, 쉽게 이해하고 스스로 학습할 수 있도록 그림 중심의 설명, 예제, 연습문제를 마련하는 등 모든 작업에 최선을 다하였다.

- Objectives : 학습 목표로 그 장에서 무엇을 배우는지를 제시하였다.
- CHECK TIME : 이미 배운 내용을 점검하기 위해 단답형식의 문제를 제시하였다.
- Tip : 학습한 내용의 보충 설명이나 참고 사항 등을 정리하였다.
잠깐! : 지나치기 쉬운 내용들을 환기시키기 위해 주의 사항 등을 설명하였다.
요약 : 배운 내용을 정리하기 쉽도록 주요 용어를 중심으로 주요 내용을 요약하였다.
- Open Challenge : 프로젝트 문제로 그 장에서 학습한 내용을 응용하여 프로그램을 작성할 수 있도록 하였다.
- 연습문제 : 배운 내용을 정확히 이해하고 있는지 스스로 검토하도록 하기 위한 ‘이론문제’와 이론을 바탕으로 실전 응용프로그램을 작성해보도록 하는 다양한 ‘실습문제’를 수록하였다.
- 본문을 쉽게 이해하도록 돕는 그림과 삽화 : 내용을 쉽게 이해하고 지루하지 않도록 그림과 삽화를 다양하게 사용하였다.

이 책의 내용

먼저, 1장에서는 자바가 태어난 배경과 그 발전 과정을 알아보고, 자바의 특징 및 자바가 사용되는 다양한 분야에 대해 알아본다. 2장에서는 자바 프로그램의 기본 구성과 그 요소에 대해 알아본다. 즉, 자바 프로그래밍을 위한 클래스, 변수, 메소드, 상수에 이름을 붙이고, 이들을 선언하는 방법에 대해 알아보고, 산술 연산자, 비트 연산자, 논리 연산자 등 연산자와 프로그램 제어를 위한 if, if-else, switch 등의 조건문에 대해 알아본다. 3장에서는 반복문과 배열에 대해 알아본다. 또한 배열을 다루다보면 인덱스가 배열의 범위를 벗어나는 경우가 생기는데, 이러한 예외 상황을 자바가 어떻게 처리하는지도 간단히 알아본다. 4장에서는 객체 지향 언어의 기본이라 할 수 있는 클래스와 객체에 대한 개념과 객체 생성 방법, 객체의 구성 등에 대해 다룬다. 5장에서는 상속의 개념을 설명하고, 서브 클래스를 작성하는 방법, 동적 바인딩 등의 내용을 설명한다. 또한 추상 클래스와 인터페이스에 대한 내용을 설명한다.

6장에서는 패키지를 만들고 사용하는 방법을 자세히 설명한다. 또한 자바 응용프로그램 작성 시 많이 사용하는 JDK에서 제공하는 기본 패키지와 클래스의 사용에 대해 설명한다. 7장에서는 여러 개의 객체들을 저장하고 다루는 컬렉션에 대해 설명한다. 또한 코드의 재사용과 관련된 제네릭(generic)의 개념과 활용에 대해 설명한다. 8장에서는 자바에서의 입출력 스트림의 기본 개념을 설명한다. 또한 다양한 API를 소개하고 자바 응용프로그램이 키보드, 콘솔 등 여러 입출력 장치로부터 데이터를 입출력하거나 파일을 입출력하는 방법을 설명한다. 9장에서는 메뉴나 이미지, 그래픽을 이용하여 화면에 보여주고 사용자로부터 마우스를 이용한 다양한 입력을 받을 수 있는 GUI 방법을 소개한다. 그리고 자바와 스윙(Swing) 패키지를 대상으로 기본적인 GUI 응용프로그램을 작성하는 방법을 설명한다. 또한 자바 GUI의 기본 체제인 컨테이너와 컴포넌트의 구성을 이해하고 프레임을 만드는 방법과 컨테이너가 컴포넌트를 배치하는 여러 가지 방법 등을 다룬다. 10장에서는 어떤 이벤트가 발생하고, 이벤트를 처리하는 리스너는 어떻게 작성하며, 이벤트 리스너는 발생한 이벤트에 관한 정보를 어떻게 얻는지 등 제반 사항을 배운다.

11장에서는 많이 사용되는 기본적인 스윙 컴포넌트들을 소개하며, Item 이벤트와 Change 이벤트를 활용하는 방법도 소개한다. 12장에서는 화면에 자유롭게 도형이나 이미지를 출력할 수 있는 Graphics의 기능을 이해하고 활용하는 방법을 다룬다. 13장에서는 스레드 개념, 스레드 만들기, JVM와 스레드, 스레드 변이, 스레드 동기화 등을 다룬다. 14장에서는 사용하기 쉬운 몇몇 고급 스윙 컴포넌트를 소개한다. 또한 응용프로그램을 작성하는 데 필수적인 메뉴, 툴바, 툴팁, 다양한 팝업 다이얼로그, 파일 입출력을 위한 파일 열기/저장 다이얼로그, 색상 선택을 위한 컬러 다이얼로그, 다수의 팬을 가지는 탭팬 등을 다룬다.

15장에서는 웹 브라우저 사용자들이 자바스크립트 등으로 구현하기 어려운 구조의 프로그램이나 자바스크립트보다 세련되고 활동적인 GUI를 구축하기 위해 활용되는 애플릿에 대해 배운다. 16장에서는 가장 많이 사용되는 TCP/IP 프로토콜에 대해 간단히 알아보고, 자바의 소켓을 이용하여 클라이언트와 서버가 어떻게 데이터를 주고받는지 알아보며, 프로그래밍하는 기법을 설명한다. 그리고 현재 우리가 가장 많이 접하는 웹과 관련된 URL 클래스를 이용한 네트워크 프로그래밍과 웹을 비롯한 기타 네트워크 응용프로그램의 기초가 되는 소켓 프로그래밍을 공부한다. 17장에서는 데이터베이스에 대해 간단히 알아본 후 자바의 JDBC를 이용하여 데이터베이스를 생성하고, 접속하고, 데이터를 생성·수정·삭제·검색 등을 수행하는 자바 응용프로그램을 작성하는 기법에 대해서 설명한다.

▣ 작가 소개

저자 : 황기태
현 한성대학교 컴퓨터공학과 교수이다. 서울대학교 컴퓨터공학과 박사, 서울대학교 컴퓨터공학과 석사, 서울대학교 컴퓨터공학과 학사 학위를 받았다. 비트교육센타 센타장, IBM Watson Research Center 방문 연구원, University of California, Irvine 방문 교수,University of Florida 방문 교수를 거쳤다.

저자 : 김효수
현 NewBay Software 지사장/한성대학교 컴퓨터공학과 겸임 교수이다. 서울대학교 컴퓨터공학과 석사, 서울대학교 컴퓨터공학과 학사 학위를 받았다. LG전자 선임 연구원을 거쳤고 한국 Rational Software, 한국 Openwave Systems에서 근무했다. M-Systems 지사장, IKIVO 지사장을 거쳤다.

▣ 주요 목차

CHAPTER 01 자바 시작
1.1 컴퓨터와 프로그래밍
1.2 자바의 출현과 WORA
1.3 자바의 진화
1.4 자바 개발 환경 구축
1.5 자바 프로그램 개발
1.6 이클립스를 이용한 자바 프로그램 개발
1.7 자바 응용프로그램의 종류
1.8 자바의 특징
요약
Open Challenge
연습문제

CHAPTER 02 자바 기본 프로그래밍
2.1 자바 프로그램의 구조
2.2 식별자
2.3 자바의 데이터 타입
2.4 자바에서 키 입력
2.5 연산자
2.6 조건문
요약
Open Challenge
연습문제

CHAPTER 03 반복문과 배열 그리고 예외 처리
3.1 반복문
3.2 continue 문과 break 문
3.3 배열
3.4 다차원 배열
3.5 main() 메소드의 인자
3.6 자바의 예외 처리
요약
Open Challenge
연습문제

CHAPTER 04 클래스와 객체
4.1 객체 지향과 자바
4.2 클래스 선언과 활용
4.3 메소드 활용
4.4 생성자(constructor)
4.5 가비지와 가비지 컬렉션
4.6 접근 지정자
4.7 static 멤버
4.8 final
요약
Open Challenge
연습문제

CHAPTER 05 상속
5.1 상속의 개념
5.2 클래스 상속과 객체
5.3 상속과 접근 지정자
5.4 상속과 생성자
5.5 객체의 타입 변환 : 업캐스팅과 다운캐스팅
5.6 메소드 오버라이딩
5.7 추상 클래스
5.8 인터페이스
요약
Open Challenge
연습문제

CHAPTER 06 패키지 개념과 자바 기본 패키지
6.1 패키지(Package)
6.2 import와 클래스 경로
6.3 패키지 만들기
6.4 자바 JDK에서 제공하는 패키지
6.5 Object 클래스
6.6 Wrapper 클래스
6.7 String 클래스
6.8 StringBuffer 클래스
6.9 StringTokenizer 클래스
6.10 Math 클래스
6.11 Calendar 클래스
요약
Open Challenge
연습문제

CHAPTER 07 제네릭과 컬렉션
7.1 컬렉션과 제네릭
7.2 제네릭 컬렉션 활용
8.3 제네릭 만들기
요약
Open Challenge
연습문제

CHAPTER 08 입출력 스트림과 파일 입출력
8.1 자바의 입출력 스트림
8.2 바이트 스트림과 파일 입출력
8.3 문자 스트림과 파일 입출력
8.4 버퍼 입출력과 파일 입출력
8.5 File 클래스
8.6 파일 복사 응용 프로그램 작성
요약
Open Challenge
연습문제

CHAPTER 09 자바 GUI 기초, AWT와 스윙(Swing)
9.1 자바의 GUI
9.2 자바 GUI 패키지
9.3 스윙 GUI 프로그램 만들기
9.4 컨테이너(Container)와 배치(Layout)
9.5 FlowLayout 배치관리자
9.6 BorderLayout 배치관리자
9.7 GridLayout 배치관리자
9.8 배치관리자 없는 컨테이너
요약
Open Challenge
연습문제

CHAPTER 10 자바의 이벤트 처리
10.1 이벤트 기반 프로그래밍(Event Driven Programming)
10.2 이벤트 객체
10.3 이벤트 리스너
10.4 어댑터(Adapter) 클래스
10.5 KeyEvent와 KeyListener
10.6 MouseEvent와 MouseListener, MouseMotionListener
요약
Open Challenge
연습문제

CHAPTER 11 기본적인 스윙 컴포넌트와 활용
11.1 스윙 컴포넌트 소개
11.2 JLabel, 레이블 컴포넌트
11.3 JButton, 버튼 컴포넌트
11.4 JCheckBox, 체크박스 컴포넌트
11.5 JRadioButton, 라디오버튼 컴포넌트
11.6 JTextField, 텍스트필드 컴포넌트
11.7 JTextArea, 텍스트 영역 컴포넌트
11.8 JList, 리스트 컴포넌트
11.9 JComboBox, 콤보박스 컴포넌트
11.10 JSlider, 슬라이더 컴포넌트
요약
Open Challenge
연습문제

CHAPTER 12 그래픽
12.1 스윙 컴포넌트 그리기
12.2 Graphics
12.3 도형 그리기와 칠하기
12.4 이미지 그리기
12.5 클리핑(Clipping)
12.6 스윙의 페인팅 메커니즘
요약
Open Challenge
연습문제

CHAPTER 13 스레드와 멀티태스킹
13.1 멀티태스킹
13.2 자바의 멀티스레딩
13.3 스레드 만들기
13.4 스레드 생명 주기와 스케줄링
13.5 스레드 종료
13.6 스레드 동기화(Thread Synchronization)
13.7 wait(), notify(), notifyAll()을 이용한 스레드 동기화
요약
Open Challenge
연습문제

CHAPTER 14 고급 스윙 컴포넌트
14.1 메뉴 만들기
14.2 툴바
14.3 툴팁
14.4 다이얼로그 만들기
14.5 팝업 다이얼로그
14.6 파일 다이얼로그
14.7 컬러 다이얼로그
14.8 탭팬
요약
Open Challenge
연습문제

CHAPTER 15 애플릿과 멀티미디어
15.1 애플릿의 특징
15.2 HTML 파일의 [applet] 태그
15.3 Applet으로 AWT 애플릿 만들기
15.4 JApplet으로 스윙 애플릿 만들기

작가 소개

목 차

역자 소개

상품요약정보 : 의류
상품정보고시
거래조건에 관한 정보
거래조건
재화 등의 배송방법에 관한 정보 상품 상세설명페이지 참고
주문 이후 예상되는 배송기간 상품 상세설명페이지 참고
제품하자가 아닌 소비자의 단순변심, 착오구매에 따른 청약철회 시 소비자가 부담하는 반품비용 등에 관한 정보 배송ㆍ교환ㆍ반품 상세설명페이지 참고
제품하자가 아닌 소비자의 단순변심, 착오구매에 따른 청약철회가 불가능한 경우 그 구체적 사유와 근거 배송ㆍ교환ㆍ반품 상세설명페이지 참고
재화등의 교환ㆍ반품ㆍ보증 조건 및 품질보증 기준 소비자분쟁해결기준(공정거래위원회 고시) 및 관계법령에 따릅니다.
재화등의 A/S 관련 전화번호 상품 상세설명페이지 참고
대금을 환불받기 위한 방법과 환불이 지연될 경우 지연에 따른 배상금을 지급받을 수 있다는 사실 및 배상금 지급의 구체적 조건 및 절차 배송ㆍ교환ㆍ반품 상세설명페이지 참고
소비자피해보상의 처리, 재화등에 대한 불만처리 및 소비자와 사업자 사이의 분쟁처리에 관한 사항 소비자분쟁해결기준(공정거래위원회 고시) 및 관계법령에 따릅니다.
거래에 관한 약관의 내용 또는 확인할 수 있는 방법 상품 상세설명페이지 및 페이지 하단의 이용약관 링크를 통해 확인할 수 있습니다.
01. 반품기한
  • 단순 변심인 경우 : 상품 수령 후 7일 이내 신청
  • 상품 불량/오배송인 경우 : 상품 수령 후 3개월 이내, 혹은 그 사실을 알게 된 이후 30일 이내 반품 신청 가능
02. 반품 배송비
반품 배송비
반품사유 반품 배송비 부담자
단순변심 고객 부담이며, 최초 배송비를 포함해 왕복 배송비가 발생합니다. 또한, 도서/산간지역이거나 설치 상품을 반품하는 경우에는 배송비가 추가될 수 있습니다.
상품의 불량 또는 오배송 고객 부담이 아닙니다.
03. 배송상태에 따른 환불안내
환불안내
진행 상태 결제완료 상품준비중 배송지시/배송중/배송완료
어떤 상태 주문 내역 확인 전 상품 발송 준비 중 상품이 택배사로 이미 발송 됨
환불 즉시환불 구매취소 의사전달 → 발송중지 → 환불 반품회수 → 반품상품 확인 → 환불
04. 취소방법
  • 결제완료 또는 배송상품은 1:1 문의에 취소신청해 주셔야 합니다.
  • 특정 상품의 경우 취소 수수료가 부과될 수 있습니다.
05. 환불시점
환불시점
결제수단 환불시점 환불방법
신용카드 취소완료 후, 3~5일 내 카드사 승인취소(영업일 기준) 신용카드 승인취소
계좌이체 실시간 계좌이체 또는 무통장입금
취소완료 후, 입력하신 환불계좌로 1~2일 내 환불금액 입금(영업일 기준)
계좌입금
휴대폰 결제 당일 구매내역 취소시 취소 완료 후, 6시간 이내 승인취소
전월 구매내역 취소시 취소 완료 후, 1~2일 내 환불계좌로 입금(영업일 기준)
당일취소 : 휴대폰 결제 승인취소
익월취소 : 계좌입금
포인트 취소 완료 후, 당일 포인트 적립 환불 포인트 적립
06. 취소반품 불가 사유
  • 단순변심으로 인한 반품 시, 배송 완료 후 7일이 지나면 취소/반품 신청이 접수되지 않습니다.
  • 주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우에는 취소가 불가합니다.
  • 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염된 경우에는 취소/반품이 제한됩니다.
  • 제조사의 사정 (신모델 출시 등) 및 부품 가격변동 등에 의해 가격이 변동될 수 있으며, 이로 인한 반품 및 가격보상은 불가합니다.
  • 뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우 진료 확인서 및 소견서 등을 증빙하면 환불이 가능하지만 이 경우, 제반 비용은 고객님께서 부담하셔야 합니다.
  • 각 상품별로 아래와 같은 사유로 취소/반품이 제한 될 수 있습니다.

환불불가
상품군 취소/반품 불가사유
의류/잡화/수입명품 상품의 택(TAG) 제거/라벨 및 상품 훼손으로 상품의 가치가 현저히 감소된 경우
계절상품/식품/화장품 고객님의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우
가전/설치상품 전자제품 특성 상, 정품 스티커가 제거되었거나 설치 또는 사용 이후에 단순변심인 경우, 액정화면이 부착된 상품의 전원을 켠 경우 (상품불량으로 인한 교환/반품은 AS센터의 불량 판정을 받아야 합니다.)
자동차용품 상품을 개봉하여 장착한 이후 단순변심의 경우
CD/DVD/GAME/BOOK등 복제가 가능한 상품의 포장 등을 훼손한 경우
내비게이션, OS시리얼이 적힌 PMP 상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우
노트북, 테스크탑 PC 등 홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우