새책 | eBook | 알라딘 직접배송 중고 | 이 광활한 우주점 | 판매자 중고 (22) |
22,500원(절판) | 출간알림 신청![]() | - | - | 1,000원 |
1장 자바의 소개
본 서를 읽기 전에
경쟁자는 나왔는데...
근데, 왜 자바는 배우기 어렵지?
본 서의 접근 방안
자바의 특징
플랫폼 독립성
객체지향 언어
멀티 쓰레드 지원
자동 메모리 관리
동적인 성능 확장 제공
자바의 구조
바이트 코드
자바가상머신
바이트 코드와 자바가상머신의 관계
자바 프로그램의 유형
각 장에 대한 설명
1부: 언어 기초
2부: 클래스와 개체
3부: GUI와 그래픽
4부: 쓰레드, 애플릿, 예외처리, 멀티미디어
5부: 입출력과 네트워크, 스윙 및 JDBC
저술의 범위
1부 언어 기초
2장 넷빈과 개발환경의 구축
JDK의 설치
JDK란?
▶ 따라하기: JDK와 도큐먼트의 설치
Win95/98에서 환경변수 설정
▶ 따라하기: sysedit 실행과 path 추가
Win2000에서의 환경변수 설정
▶ 따라하기: 윈도우 2000에서 path 설정
WinXP에서의 환경변수 설정
▶ 따라하기: 윈도우 XP에서 환경 설정
Java 도움말의 설치
▶ 따라하기: java 도움말 설치
통합개발환경: 넷빈의 설치
▶ 따라하기: 넷빈 설치
JDK만을 이용한 프로그램 개발
▶ 따라하기: 소스 편집과 컴파일
넷빈: 프로젝트의 생성
▶ 따라하기 : 넷빈 프로젝트 생성
넷빈: 작업공간의 사용
코드 편집시의 기능들
프로젝트 탭의 정보들
넷빈: 컴파일
넷빈: 실행 및 디버깅
▶ 따라하기 : 디버깅 배우기
넷빈: 프로젝트 구성
3장 데이터형과 연산자
식별자, 예약어, 상수
프로그램의 구성
식별자
예약어
상수
데이터 형
기본 데이터형
레퍼런스 데이터형
상수
변수
변수 선언하기
레퍼런스형 변수
데이터 변환과 캐스팅
종류가 다른 테이터형의 변환
수치형 데이터형의 변환
캐스팅(Casting)
수치 연산시의 데이터변환
연산자
수치 연산자
대입 연산자
연산 후 대입 연산자
증가/감소 연산자
비교 연산자
비트 연산자
조건 연산자
삼항 연산자
4장 문과 배열
실행문과 주석문
실행문
주석문
분기문
if-else문
switch문
반복문
while 문
do-while 문
for 문
break 문
continue 문
배열
배열의 선언
배열의 메모리 할당
배열요소의 이용
배열의 이용과 초기화
다차원 배열
2부 클래스와 설계
5장 클래스 기본
객체지향에 대한 이해
구조적 프로그래밍 방식
객체지향
Java에서의 객체지향
자바에서의 객체지향 3단계
객체모델링
클래스 정의
▶ 따라하기 : 클래스 정의
객체 생성과 사용
레퍼런스 변수
인스턴스의 생성과 사용
레퍼런스 변수 초기화와 null 레퍼런스
main() 메서드의 사용
main() 메서드의 이해
main() 메서드의 인자
메서드 호출시의 레퍼런스와 기본 데이터형 변수
▶ 따라하기 : 기본 데이터형과 레퍼런스 변수의 인자 사용
생성자와 가비지 콜렉팅
생성자의 사용
▶ 따라하기:생성자 추가
가비지 콜렉팅
다중 객체 정의
has-a 관계 : 집합
소스에서의 구조
▶ 따라하기 : has-a 관계 실습
UML 클래스 표기법-1 : 집합
클래스 표시
집합 관계
import 문과 패키지
import문
패키지 작성법
자바의 표준 패키지
메서드 오버로딩
여러 개의 생성자가 필요한 경우
▶ 따라하기 : 생성자 오버로딩
메서드 오버로딩의 구조
▶ 따라하기 : 메서드 오버로딩
6장 클래스 고급(I)
상속
상속이란 무엇인가?
자바에서의 상속 사용
▶ 따라하기 : 상속
트럭 클래스, 택시 클래스
is-a 관계 : 상속
UML 클래스 표기법-2 : 상속
접근 제어(Access Modifier)
클래스/메서드/멤버변수에 적용하는 경우
private/ public
▶ 따라하기 : 접근 제어
protected
▶ 따라하기 : 상속과 protected 멤버
UML 클래스 표기법-3 : 접근 제어
메서드 오버라이딩
메서드 오버라이딩 구현
메서드 오버라이딩시 주의 사항
오버라이딩된 메서드의 사용
▶ 따라하기 : 메서드 오버라이딩
은닉 변수
this와 super
super
this
▶ 따라하기 : this/super 사용
▶ 따라하기 : super의 사용
상속시의 생성자 관계
생성자 연속 호출
▶ 따라하기 : 생성자의 연속 호출
디폴트 생성자와 상속관계
▶ 따라하기 : 상속과 디폴트 생성자
this()와 super()
super()의 사용
▶ 따라하기 : super()의 사용
this()의 사용
7장 클래스 고급(II)
static 수정자
static 수정자의 의미
멤버변수에 사용될 경우
▶ 따라하기 : static 멤버의 사용
메서드에 사용되는 경우
final 수정자
final 수정자의 의미
클래스에 사용될 경우
메서드에 사용될 경우
멤버/로컬 변수에 사용될 경우
상수 선언
▶ 따라하기 : 클래스에서의 상수 선언
abstract 수정자와 추상 클래스
abstract 수정자의 의미
메서드에 적용하는 경우
클래스에 적용하는 경우
▶ 따라하기 : 추상 클래스 실습
그 외의 수정자
인터페이스
인터페이스와 다중 상속
인터페이스는 명세서이다.
인터페이스의 사용
▶ 따라하기 : 인터페이스 정의
인터페이스 상속
▶ 따라하기 : 인터페이스 상속
인터페이스와 클래스 인스턴스의 혼재
▶ 따라하기 : 인터페이스 레퍼런스의 이용
UML 클래스 표기법-4
인터페이스 표기법
클래스의 인터페이스 구현
레퍼런스 변환과 캐스팅
변환과 캐스팅
클래스 레퍼런스 형변환
인터페이스 레퍼런스 변환
상속과 클래스 레퍼런스의 관계
▶ 따라하기 : 상속과 레퍼런스 변수의 관계
내부 클래스(Inner Class)
내부 클래스의 개념
내부 클래스의 분류
내부 멤버 클래스
▶ 따라하기 : 내부 멤버 클래스의 사용
내부 무명 클래스
▶ 따라하기 : 내부 무명 클래스의 사용
8장 자바의 중요 클래스
Object 클래스
equals() 메서드
toString() 메서드
▶ 따라하기 : to String() 메서드 오버라이딩
Wrapper 클래스
기본 데이터형과 Wapper 클래스
대표적 메서드
▶ 따라하기 : Wrapper 클래스의 사용
오토박싱/오토언박싱
▶ 따라하기 : 오토박싱/언박싱
String 클래스
String 클래스의 구조
메서드 호출시의 String 객체의 레퍼런스 변수
▶따라하기 : String 클래스의 사용
null 스트링
대표적 메서드
▶ 따라하기 : String 클래스의 메서드
String 클래스로의 전환
StringBuffer 클래스
대표적 메서드
▶ 따라하기 : String Buffer 클래스의 사용
StringTokenizer 클래스
대표적 메서드
▶ 따라하기 : String Tokenizer 클래스의 사용
Calendar 클래스
▶ 따라하기 : Calendar 클래스의 사용
Math 클래스
대표적인 메서드
▶ 따라하기 : Math 클래스의 사용
Random 클래스
대표적인 메서드
▶ 따라하기 : Random 클래스의 사용
9장 컬렉션
자료구조 개요
인터페이스
구현 클래스
알고리즘
Stack 클래스
Stack의 구조
데이터 접근 메서드
▶ 따라하기 : Stack 클래스의 사용
Queue 인터페이스
Queue의 구조
데이터 접근 메서드
▶ 따라하기 : Queue 클래스의 사용
Vector 클래스
Vector 클래스의 구조
Vector 클래스 인스턴스의 생성
벡터에 요소 저장
벡터 안의 요소 접근
▶ 따라하기 : Vector 클래스의 사용
벡터에서 요소 삭제
▶ 따라하기 : 벡터에서 요소 삭제
벡터에서 정보 찾기
▶ 따라하기 : 요소 찾기
Iterator 인터페이스
Iterator 인터페이스의 구조
데이터 접근 메서드
▶ 따라하기 : Iterator의 사용
Hashtable 클래스
Hashtable 클래스의 구조
접근 메서드
정보 제공 메서드
▶ 따라하기 : 해쉬 테이블의 사용
10장 제네릭과 확장 기능
제네릭(Generic)
기존 방식
제네릭의 이용
▶ 따라하기 : 제네릭과 기존 방식
제네릭의 문법
컬렉션의 제네릭 사용
▶ 따라하기 : 반복자의 제네릭 사용
▶ 따라하기 : 해쉬 테이블의 제네릭 사용
제네릭의 레퍼런스 호환과 상속
▶ 따라하기 : 제네릭의 와일드 카드 이용
제네릭 지원 클래스의 정의
▶ 따라하기 : 제네릭 지원 클래스의 정의
확장 for 문
▶ 따라하기 : 확장 for 문의 사용
열거형
▶ 따라하기 : 열거형의 사용
비정형 인자(Varargs)
Formatter
개요
형식화 인자
▶ 따라하기 : formatter의 사용
형식화 인자의 옵션과 String에서의 사용
▶ 따라하기 : String과 formatter
3부 GUI와 그래픽
11장 AWT
AWT의 이해
AWT의 하부 윈도우의 매핑
AWT의 이용 방법
AWT 컴포넌트/컨테이너의 클래스 구조
Component 클래스
Label 컴포넌트
▶ 따라하기 : Label 컴포넌트의 사용
Button 컴포넌트
▶ 따라하기 : Button 컴포넌트의 사용
Checkbox 컴포넌트
일반적인 체크박스 사용
▶ 따라하기 : Checkbox 컴포넌트의 사용
라디오 형 체크박스 사용
▶ 따라하기 : 라디오 형 체크 박스의 사용
Choice 컴포넌트
▶ 따라하기 : Choice 컴포넌트의 사용
List 컴포넌트
▶ 따라하기 : List 컴포넌트의 사용
TextField 컴포넌트
▶ 따라하기 : TextField 컴포넌트의 사용
TextArea 컴포넌트
▶ 따라하기 : TextArea 컴포넌트의 사용
Scrollbar 컴포넌트
▶ 따라하기 : Scrollbar 컴포넌트의 사용
Canvas 컴포넌트
▶ 따라하기 : Canvas 컴포넌트의 사용
Menu 사용
메뉴의 구성 및 클래스 구조
메뉴의 사용법
▶ 따라하기 : 메뉴 사용
12장 컨테이너와 배치
컨테이너의 이해
컨테이너의 종류
컨테이너의 사용
Window 컨테이너
Frame 컨테이너
▶ 따라하기 : Frame 컨테이너의 사용
Panel 컨테이너
▶ 따라하기 : Panel 컨테이너의 사용
Applet 컨테이너
Dialog 컨테이너
▶ 따라하기 : Dialog 컨테이너의 사용
배치에 대한 이해
배치란?
배치 관리자와 컨테이너의 관계
배치 관리자의 사용
Flow 레이아웃
▶ 따라하기 : Flow 레이아웃의 사용
Border 레이아웃
▶ 따라하기 : Border 레이아웃의 사용
Grid 레이아웃
▶ 따라하기 : Grid 레이아웃의 사용
Card 레이아웃
▶ 따라하기 : Card 레이아웃의 사용
Gridbag 레이아웃
▶ 따라하기 : Gridbag 레이아웃의 사용
13장 AWT 이벤트 처리와 메뉴
이벤트 처리의 구조
AWT에서의 이벤트 처리 구조
1단계: 이벤트 클래스의 산정
2단계: 이벤트 리스너의 작성
3단계: 이벤트 리스너와 Event의 연결
▶ 따라하기 : 이벤트 처리
이벤트 소스를 포함하고 있는 클래스 자체가 이벤트 리스너가 되는 경우
▶ 따라하기 : 이벤트 리스너 지정
Adapter의 사용
▶ 따라하기 : Adapter의 사용
내부 무명 클래스의 사용
▶ 따라하기 : 내부 무명 클래스의 사용
상위 레벨 이벤트 처리
Text 컴포넌트
▶ 따라하기 : 키보드 이벤트 처리
Checkbox 컴포넌트
▶ 따라하기 : Checkbox 컴포넌트의 이벤트 처리
Choice 컴포넌트
▶ 따라하기 : Choice 컴포넌트의 이벤트 처리
List 컴포넌트
▶ 따라하기 : 리스트 컴포넌트의 이벤트 처리
하위 레벨 이벤트의 처리
▶ 따라하기 : 마우스 이벤트 처리
Mune의 이벤트 처리
▶ 따라하기 : 메뉴 이벤트 처리
PopupMenu
▶ 따라하기 : PopupMenu 이벤트 처리
14장 그래픽
자바에서의 그래픽 구조
그래픽의 대상
그래픽의 주체
그래픽의 도구
paint(), repaint(), update() 메서드
repaint() 메서드
update() 메서드
paint() 메서드
그래픽 컨텍스트
색상 설정
폰트 설정
▶ 따라하기 : 폰트 실습
그래픽 메서드
그래픽 좌표 시스템
선 그리기
▶ 따라하기 : 선 그리기
사각형 그리기
▶ 따라하기 : 사각형 그리기
타원 그리기
▶ 따라하기 : 타원 그리기
부채꼴 그리기
▶ 따라하기 : 부채꼴 그리기
다각형 그리기
▶ 따라하기 : 다각형 그리기
연결선 그리기
▶ 따라하기 : 연결선 그리기
둥근 사각형 그리기
▶ 따라하기 : 둥근 사각형 그리기
글자 쓰기
▶ 따라하기 : 글자 쓰기
클리핑(Clipping)
▶ 따라하기 : 클리핑 사용 안하기
▶ 따라하기 : 클리핑 사용하기
4부 쓰레드, 애플릿, 예외처리, 멀티미디어
15장 쓰레드
멀티쓰레딩의 이해
멀티태스킹
멀티 쓰레딩
자바의 쓰레드: Thread 클래스의 사용
Thread 클래스 사용법
▶ 따라하기 : Thread 클래스 사용
run() 메서드와 start() 메서드의 관계
▶ 따라하기 : Thread 클래스 상속
자바의 쓰레드: Runnable 인터페이스
Runnable 인터페이스의 사용법
▶ 따라하기 : Runnable 인터페이스의 사용
쓰레드의 제어
쓰레드의 상태
메서드 호출에 의한 쓰레드 제어
지연(Blocked)과 대기(Waiting)
지연
대기
자원 공유와 동기화 메서드
자원 공유에 대한 이해
동기화 메서드
동기화 메서드와 모니터
▶ 따라하기 : 동기화 메서드의 사용
동기화 코드 블록의 사용
wait(), notify(), notifyAll() 메서드의 사용
▶ 따라하기 : wait(), notify()의 사용
우선권 제어
▶ 따라하기 : 우선권 제어
16장 애플릿
애플릿에 대한 이해
애플릿과 HTML
애플릿과 HTML의 관계
애플릿 관련 HTML 태그
애플릿의 구조
애플릿의 클래스 관계
Applet의 이벤트
▶ 따라하기 : Applet 클래스의 사용
HTML 문서와 애플릿의 인자 처리
▶ 따라하기 : 애플릿의 인자 사용
애플릿의 이벤트 처리
▶ 따라하기 : 이벤트 처리
애플릿과 AWT 컴포넌트
▶ 따라하기 : 애플릿과 컴포넌트
애플릿과 배치
▶ 따라하기 : 배치 관리자의 사용
쓰레드와 애플릿
▶ 따라하기 : 애플릿에서의 쓰레드 사용
애플릿의 보안 문제
17장 이미지 처리와 오디오
이미지 로딩과 애플릿
Image 객체의 생성
그래픽 컨텍스트에서 그리기
▶ 따라하기 : 비트맵 보여주기
애플리케이션에서의 비트맵 이미지 그리기
▶ 따라하기 : 비트맵 그리기
간단한 이미지 프로세싱
일부만 그리기
이미지 스케일링하기
좌우 뒤집기
상하 뒤집기
완전히 뒤집기
▶ 따라하기 : 이미지 프로세싱 실습
이미지 처리의 내부구조
▶ 따라하기 : 이미지 로딩 쓰레드 제어
이미지 애니메이션
▶ 따라하기 : 애니메이션
update() 메서드의 오버라이딩
▶ 따라하기 : update() 메서드 오버라이딩
더블 버퍼링의 사용
▶ 따라하기 : 더블 버퍼링의 사용
배경 이미지에 움직이는 모습을 그리기
▶ 따라하기 : 배경 이미지 사용
오디오 처리에 대한 이해
애플릿에서의 오디오 플레이
▶ 따라하기 : 애플릿에서의 오디오 플레어
애플리케이션에서의 오디오 플레이
18장 예외 처리와 디버깅
예외(Exception)에 대한 이해
디버깅과 예외
Exception 클래스
Exception 클래스의 계층 구조도
try/catch에 의한 예외 처리
try/catch 사용법
▶ 따라하기 : 예외 처리
다중 catch 문
▶ 따라하기 : 다중 catch 문의 사용
finally의 사용법
▶ 따라하기 : finally의 사용
throws/throw의 사용
throws의 사용
▶ 따라하기 : throws의 사용
throw의 사용
▶ 따라하기 : throw의 사용
새로운 예외 클래스 만들기
▶ 따라하기 : 예외 클래스 작성
Assertion
Assertion의 기본 구조
▶ 따라하기 : assert의 사용
Assertion의 사용 예
▶ 따라하기 : assert의 사용 예
5부 입출력과 네트워크, 스윙 및 JDBC
19장 입출력 스트림
스트림의 이해
스트림의 특징
스트림의 구분
입력 스트림
InputStream & Reader
▶ 따라하기 : InputStream & Reader 클래스의 사용
▶ 따라하기 : Reader 클래스의 사용
FileInputStream & FileReader
▶ 따라하기 : FileInputStream & FileReader 클래스의 사용
스트림 결합-입력 스트림
FilterInputStream
BufferedInputStream과 BufferedReader
▶ 따라하기 : BufferedReader 클래스의 사용
DataInputStream
출력 스트림
OutputStream & Writer
FileOutputStream과 FileWriter
▶ 따라하기 : FileWriter의 사용
▶ 따라하기 : 파일 복사하기
스트림 결합-출력 스트림
BufferedOutputStream과 BufferedWriter
▶ 따라하기 : BufferedWriter 클래스의 사용
DataOutputStream
▶ 따라하기 : DataOutputStream 클래스의 사용
PrintStream과 PrintWriter
▶ 따라하기 : PrintWriter 클래스의 사용
▶ 따라하기 : 형식화된 출력
File 클래스
▶ 따라하기 : 파일 정보 구하기
RandomAccessFile 클래스
▶ 따라하기 : 파일 포인터의 사용
Image I/O
개념
ImageIO 클래스
▶ 따라하기 : 이미지 형식 변환
20장 네트워크
네트워크 개요
IP 주소란?
포트
프로토콜
TCP와 UDP 프로토콜
InetAddress 클래스
InetAddress 생성
메서드
▶ 따라하기 : InterAddress 클래스의 사용
URL 클래스
URL이란?
URL 클래스
URL 클래스 인스턴스 생성
URL 정보 얻기
URL로부터 데이터 읽기
▶ 따라하기 : URL을 읽어 화면에 출력
URLConnection 클래스
URLConnection 클래스 인스턴스 생성과 접속
URLConnection 클래스로 얻는 정보들
▶ 따라하기 : URLConnection의 사용
소켓 프로그래밍
소켓(Socket)에 대한 이해
클라이언트/서버
▶ 따라하기 : 소켓 클라이언트
서버 소켓
서버 개요
ServerSocket 클래스의 생성
ServerSocket 클래스의 접속 처리
▶ 따라하기 : 서버 소켓의 사용
다중 접속 서버
▶ 따라하기 : 다중 접속서버 작성
UDP
UDP에 대한 이해
DatagramSocket 클래스
DatagramPacket 클래스
UDP 패킷 보내기
▶ 따라하기 : UDP 클라이언트
UDP 데이터그램 받기
▶ 따라하기 : UDP 서버
21장 스윙(Swing)
스윙의 특징
룩앤필(Look & Feel)
Slow Motion Rendering
풍선도움말의 사용
더블 버퍼링의 지원
스윙과 AWT의 비교
차이점
스윙은 AWT의 대치품?
스윙의 클래스 구조
컴포넌트의 종류
새롭게 추가된 컴포넌트
컨테이너, 배치, 이벤트 처리
스윙 컨테이너
배치
▶ 따라하기 : 배치 사용
이벤트 처리
스윙의 일반적 기능
테두리의 설정
▶ 따라하기 : 테두리 실습
풍선도움말의 사용
▶ 따라하기 : 풍선 도움말의 사용
룩앤필의 설정
▶ 따라하기 : 룩앤필 설정
모델-뷰-컨트롤러 구조
모델-뷰-컨트롤러 개요
스윙의 변형 모델-뷰-컨트롤러
스윙 모델-뷰-컨트롤러의 동작
스윙 컴포넌트의 사용
JButton 컴포넌트
▶ 따라하기 : JButton 컴포넌트의 사용
JList 컴포넌트
▶ 따라하기 : JList 컴포넌트의 사용
JComboBox 컴포넌트
▶ 따라하기 : JComboBox 컴포넌트의 사용
JTextComponent 컴포넌트
▶ 따라하기 : JTextComponent 컴포넌트의 사용
JToolbar 컴포넌트
▶ 따라하기 : JToolbar 컴포넌트의 사용
JTabbedPane 컴포넌트
▶ 따라하기 : JTabbedPane 컴포넌트의 사용
JProgressBar 컴포넌트
▶ 따라하기 : JProgressBar 컴포넌트의 사용
JTable 컴포넌트
JTable의 사용
▶ 따라하기 : JTable의 사용
테이블에 헤더 추가
▶ 따라하기 : 테이블에 헤더 추가
전체 화면 처리
▶ 따라하기 : 전체 화면 처리
22장 JDBC
데이터베이스란?
DBMS란?
관계형 데이터베이스와 SQL
조건 검색
관계란?
고유키와 외래키 개념
SQL
SELECT 문
INSERT 문
DELETE 문
UPDATE 문
JDBC의 구조
JDBC의 출현
샘플 데이터베이스
▶ 따라하기 : ODBC 매니저의 사용
JDBC의 연결
JDBC API
▶ 따라하기 : JDBC 연결
데이터의 추가(INSERT문)
▶ 따라하기 : INSERT 사용
데이터의 검색(SELECT문)
▶ 따라하기 : SELECT 사용
데이터의 변경(Update문)
▶ 따라하기 : UPDATE 사용
데이터의 삭제(Delete문)
▶ 따라하기 : DELETE 사용
메타데이터의 지원
▶ 따라하기 : 메타데이터 사용
JDBC에서의 예외처리(Exception)
▶ 따라하기 : JDBC 예외 처리
PreparedStatement의 사용
▶ 따라하기 : PreparedStatement 사용
찾아보기