상세정보
미리보기
Do it! 자바 완전 정복
- 저자
- 김동형 저
- 출판사
- 이지스퍼블리싱 (주)
- 출판일
- 2021-09-15
- 등록일
- 2022-10-20
- 파일포맷
- PDF
- 파일크기
- 16MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
국내 최다 도해 & 그림, 1년치 영상 강의까지! 자바 입문서 끝판왕 등장!
“컴퓨터공학과 대학 교재로 안성맞춤!”
진짜 개발자가 되려는 사람들을 위한 자바 프로그래밍 입문서가 나왔다! 이 책은 ‘이제 막 프로그래밍에 입문한 사람’에게 꼭 필요한 기본기부터 ‘찐개발자’라면 꼭 알아야 할 내용까지 국내 집필서 중 가장 많은 도해와 그림을 이용해 설명한다. 특히 프로그래밍 초심자들이 어려워하는 프로그램의 동작을 컴퓨터의 두뇌를 사진 찍듯 그림과 함께 설명한 구성이 눈에 띈다. 단기 코딩 학원에서는 다루지 않는 원리와 배경지식까지 배우며 정통 프로그래머로 거듭나는 뿌듯함을 느껴 보자. 여기에 400여 개의 프로그래밍 문제가 들어 있어 시험과 취업 면접도 대비할 수 있다. 컴퓨터공학과 1학년생부터 실무에서 자바를 쓰는 현직 개발자까지, 자바로 코딩하는 사람이라면 반드시 갖춰야 할 기본기를 이 책과 함께 ‘완전 정복’ 해보자.
저자소개
한양여자대학교 소프트웨어융합과 부교수로 자바 프로그래밍을 비롯한 프로그래밍 교과목을 강의하고 있다. 한양대학교에서 멀티미디어 통신 전공으로 공학 박사를 취득한 뒤 한국전자통신연구원(ETRI) 방송통신융합연구본부에서 H.264, HEVC 비디오 코덱(CODEC)의 개발 및 국제 표준화 연구를 수행하였다. 그 결과로 10여 건의 국내 특허와 2건의 국제 특허를 등록하였으며, 그중에 국제 특허 1건은 현재 국제표준특허로 채택되어 있다.
목차
1장 자바 시작하기
1.1 프로그래밍 언어와 자바
__1.1.1 프로그래밍 언어
__1.1.2 자바의 역사
__1.1.3 자바의 플랫폼 독립성
__1.1.4 자바 개발 도구와 자바 실행 환경
1.2 자바 개발 환경
__1.2.1 JDK 설치하기
__1.2.2 이클립스 설치하기
__1.2.3 이클립스 구성 및 환경 설정하기
__1.2.4 이클립스에서 다양한 설정 바꾸기
__1.2.5 이클립스 단축키
1.3 자바 프로젝트
__1.3.1 자바 프로젝트 생성 및 실행하기
__1.3.2 자바 프로젝트 생성 실습하기
1.4 자바 프로그램의 기본 구조
__1.4.1 자바 소스 코드의 실행 과정
__1.4.2 소스 코드의 기본 구조 분석
__1.4.3 소스 파일 컴파일과 바이트 코드 생성
__1.4.4 콘솔 출력 메서드와 문자열 출력
2장 자료형
2.1 변수와 자료형
__2.1.1 자료형 선언하기
__2.1.2 변수 사용하기
2.2 이름 짓기
__2.2.1 이름을 지을 때 지켜야 하는 필수 사항
__2.2.2 이름을 지을 때 지키면 좋은 권장 사항
__2.2.3 변수의 생존 기간
2.3 자료형의 종류
__2.3.1 기본 자료형과 참조 자료형의 차이
__2.3.2 기본 자료형의 메모리 크기와 저장할 수 있는 값의 범위
__2.3.3 부울대수 자료형 ? boolean
__2.3.4 정수 자료형 ? byte, short, int, long
__2.3.5 실수 자료형 ? float, double
__2.3.6 문자 자료형
2.4 기본 자료형 간의 타입 변환
__2.4.1 자동 타입 변환과 수동 타입 변환
__2.4.2 기본 자료형 간의 연산
3장 연산자
3.1 연산자의 종류
3.2 연산자의 연산 방법
__3.2.1 산술 연산자와 증감 연산자
__3.2.2 비트 연산자
__3.2.3 시프트 연산자
__3.2.4 비교 연산자
__3.2.5 논리 연산자
__3.2.6 대입 연산자
__3.2.7 삼항 연산자
4장 제어문과 제어 키워드
4.1 제어문
__4.1.1 제어문의 개념
__4.1.2 if 선택 제어문
__4.1.3 switch 선택 제어문
__4.1.4 for 반복 제어문
__4.1.5 while 반복 제어문
__4.1.6 do-while 반복 제어문
__4.1.7 제어문의 중복
4.2 제어 키워드
__4.2.1 break 제어 키워드
__4.2.2 continue 제어 키워드
5장 참조 자료형
5.1 배열
__5.1.1 배열이란?
__5.1.2 배열 생성하기
__5.1.3 1차원 배열을 생성하는 다양한 방법
__5.1.4 참조 변수와 배열 객체의 값 초기화하기
__5.1.5 참조 자료형으로서 배열의 특징
__5.1.6 반복문을 이용해 배열 데이터 읽기
__5.1.7 2차원 정방 행렬 배열
__5.1.8 2차원 비정방 행렬 배열
__5.1.9 2차원 배열의 출력
__5.1.10 main() 메서드의 입력매개변수
5.2 문자열을 저장하는 String
__5.2.1 문자열의 표현과 객체 생성
__5.2.2 String 클래스의 2가지 특징
__5.2.3 String 객체의 ‘+’ 연산
__5.2.4 String 클래스의 주요 메서드
6장 클래스와 객체
6.1 클래스와 객체의 개념
__6.1.1 클래스의 개념 알아보기
__6.1.2 절차지향과 객체지향 이해하기
__6.1.3 클래스 구조 살펴보기
__6.1.4 클래스와 객체 구분하기
6.2 객체의 생성과 활용
__6.2.1 객체 생성하기
__6.2.2 객체 활용하기
7장 클래스 내부 구성 요소
7.1 필드
__7.1.1 필드와 지역 변수의 구분
__7.1.2 필드와 지역 변수의 초깃값
7.2 메서드
__7.2.1 메서드 정의하기
__7.2.2 여러 리턴 타입의 메서드 살펴보기
__7.2.3 메서드 호출하기
__7.2.4 오버로딩된 메서드
__7.2.5 가변 길이 배열 입력매개변수 메서드
7.3 생성자
__7.3.1 생성자의 특징
__7.3.2 기본 생성자의 자동 추가
__7.3.3 생성자와 객체의 생성 방법
7.4 this 키워드와 this() 메서드
__7.4.1 내부 객체 참조 변수명인 this 키워드
__7.4.2 클래스 내 다른 생성자를 호출하는 this() 메서드
8장 클래스 외부 구성 요소
8.1 패키지와 임포트
__8.1.1 패키지
__8.1.2 임포트
8.2 외부 클래스
9장 자바 제어자 1
9.1 접근 지정자
__9.1.1 멤버 및 생성자의 접근 지정자
__9.1.2 클래스의 접근 지정자
__9.1.3 클래스 접근 지정자와 생성자 접근 지정자의 연관성
9.2 static 제어자
__9.2.1 인스턴스 필드와 정적 필드
__9.2.2 인스턴스 메서드와 정적 메서드
__9.2.3 정적 메서드 안에서 사용할 수 있는 필드와 메서드
__9.2.4 정적 초기화 블록
__9.2.5 static main() 메서드
10장 클래스의 상속과 다형성
10.1 클래스 상속의 개념과 문법적 특징
__10.1.1 상속의 개념
__10.1.2 상속의 장점
__10.1.3 상속 문법
__10.1.4 상속할 때의 메모리 구조
__10.1.5 생성자의 상속 여부
__10.1.6 객체의 다형적 표현
10.2 객체의 타입 변환
__10.2.1 객체의 업캐스팅과 다운캐스팅
__10.2.2 메모리로 이해하는 다운캐스팅
__10.2.3 선언 타입에 따른 차이점
__10.2.4 캐스팅 가능 여부를 확인하는 instanceof 키워드
10.3 메서드 오버라이딩
__10.3.1 메서드 오버라이딩의 개념과 동작
__10.3.2 메서드 오버라이딩을 사용하는 이유
__10.3.3 메서드 오버라이딩과 메서드 오버로딩
__10.3.4 메서드 오버라이딩과 접근 지정자
10.4 인스턴스 필드와 정적 멤버의 중복
__10.4.1 인스턴스 필드의 중복
__10.4.2 정적 필드의 중복
__10.4.3 정적 메서드의 중복
__10.4.4 인스턴스 멤버와 정적 멤버의 중복 정리
10.5 super 키워드와 super() 메서드
__10.5.1 부모의 객체를 가리키는 super 키워드
__10.5.2 부모 클래스의 생성자를 호출하는 super() 메서드
10.6 최상위 클래스 Object
__10.6.1 Object 클래스의 주요 메서드
11장 자바 제어자 2
11.1 final 제어자
__11.1.1 final 변수
__11.1.2 final 메서드와 final 클래스
11.2 abstract 제어자
__11.2.1 abtract 제어자의 장점
12장 추상 클래스와 인터페이스
12.1 추상 클래스
__12.1.1 추상 클래스의 정의
__12.1.2 추상 클래스의 특징
__12.1.3 추상 클래스 타입의 객체 생성 방법
12.2 인터페이스
__12.2.1 인터페이스의 정의와 특징
__12.2.2 인터페이스의 상속
__12.2.3 인터페이스 타입의 객체 생성 방법
__12.2.4 인터페이스의 필요성
__12.2.5 디폴트 메서드와 정적 메서드
13장 이너 클래스와 이너 인터페이스
13.1 이너 클래스
__13.1.1 인스턴스 멤버 이너 클래스
__13.1.2 정적 멤버 이너 클래스
__13.1.3 지역 이너 클래스
13.2 익명 이너 클래스
__13.2.1 익명 이너 클래스의 정의와 특징
__13.2.2 익명 이너 클래스를 활용한 인터페이스 타입의 입력매개변수 전달
13.3 이너 인터페이스
__13.3.1 이너 인터페이스의 정의와 특징
__13.3.2 이벤트 처리 기능 작성하기
14장 예외 처리
14.1 예외
__14.1.1 예외와 에러의 차이점
__14.1.2 예외 클래스의 상속 구조
__14.1.3 일반 예외 클래스
__14.1.4 실행 예외
14.2 예외 처리
__14.2.1 예외 처리 문법
__14.2.2 예외 처리 과정
__14.2.3 다중 예외 처리
__14.2.4 리소스 자동 해제 예외 처리
14.3 예외 전가
__14.3.1 예외 전가 문법
14.4 사용자 정의 예외 클래스
__14.4.1 사용자 정의 예외 클래스 생성 방법
__14.4.2 예외 클래스의 메서드
__14.4.3 사용자 정의 예외 클래스의 사용 예
15장 쓰레드
15.1 프로그램, 프로세스, 쓰레드
__15.1.1 프로그램과 프로세스의 개념
__15.1.2 쓰레드의 개념
__15.1.3 자바 프로그램에서의 쓰레드
__15.1.4 멀티 쓰레드의 필요성
__15.1.5 쓰레드는 정말 동시에 수행될까?
15.2 쓰레드의 생성 및 실행
__15.2.1 쓰레드 생성 및 실행 방법
15.3 쓰레드의 속성
__15.3.1 현재 쓰레드 객체 참좃값 얻어오기
__15.3.2 실행 중인 쓰레드의 개수 가져오기
__15.3.3 쓰레드의 이름 지정 및 가져오기
__15.3.4 쓰레드의 우선순위
__15.3.5 쓰레드의 데몬 설정
15.4 쓰레드의 동기화
__15.4.1 동기화의 개념
__15.4.2 동기화의 필요성
__15.4.3 동기화 방법
__15.4.4 동기화의 원리
15.5 쓰레드의 상태
__15.5.1 쓰레드의 6가지 상태
__15.5.2 NEW, RUNNABLE, TERMINATED
__15.5.3 TIMED_WAITING
__15.5.4 BLOCKED
__15.5.5 WAITING
16장 제네릭
16.1 제네릭 클래스와 제네릭 인터페이스
__16.1.1 제네릭 없이 여러 객체를 저장하는 클래스 작성하기
16.2 제네릭의 문법
__16.2.1 제네릭 클래스와 제네릭 인터페이스 정의하기
__16.2.2 제네릭 클래스의 객체 생성
16.3 제네릭 메서드
__16.3.1 제네릭 메서드의 정의와 호출
__16.3.2 제네릭 메서드 내에서 사용할 수 있는 메서드
16.4 제네릭 타입 범위 제한
__16.4.1 제네릭 타입 범위 제한의 필요성
__16.4.2 제네릭 타입 범위 제한의 종류와 타입 범위 제한 방법
16.5 제네릭의 상속
__16.5.1 제네릭 클래스의 상속
__16.5.2 제네릭 메서드의 상속
17장 컬렉션 프레임워크
17.1 컬렉션 프레임워크의 개념과 구조
__17.1.1 컬렉션이란?
__17.1.2 컬렉션 프레임워크란?
17.2 List 컬렉션 인터페이스
__17.2.1 배열과 리스트의 차이점
__17.2.2 List 객체 생성하기
__17.2.3 List의 주요 메서드
__17.2.4 ArrayList 구현 클래스
__17.2.5 Vector 구현 클래스
__17.2.6 LinkedList 구현 클래스
__17.2.7 ArrayList와 LinkedList의 성능 비교
17.3 Set 컬렉션 인터페이스
__17.3.1 Set 컬렉션의 특징
__17.3.2 Set의 주요 메서드
__17.3.3 HashSet 구현 클래스
__17.3.4 LinkedHashSet 구현 클래스
__17.3.5 TreeSet 구현 클래스
17.4 Map 컬렉션 인터페이스
__17.4.1 Map 컬렉션의 특징
__17.4.2 Map 인터페이스의 주요 메서드
__17.4.3 HashMap
__17.4.4 Hashtable
__17.4.5 LinkedHashMap
__17.4.6 TreeMap
17.5 Stack 컬렉션 클래스
__17.5.1 Stack 컬렉션의 특징
__17.5.2 Stack의 주요 메서드
17.6 Queue 컬렉션 인터페이스
__17.6.1 Queue 컬렉션의 특징
__17.6.2 Queue의 주요 메서드
18장 람다식
18.1 람다식
__18.1.1 객체 지향 구조 내에서 람다식 적용 과정
__18.1.2 람다식의 기본 문법 및 약식 표현
18.2 람다식의 활용
__18.2.1 구현 메서드의 약식 표현
__18.2.2 메서드 참조
__18.2.3 생성자 참조
19장 자바 입출력
19.1 파일 관리와 문자셋
__19.1.1 자바로 파일 관리하기
__19.1.2 자바에서 문자셋 이용하기
19.2 byte 단위 입출력
__19.2.1 byte 단위 입출력과 char 단위 입출력
__19.2.2 InputStream과 OutputStream의 상속 구조
__19.2.3 InputStream의 주요 메서드
__19.2.4 OutputStream의 주요 메서드
__19.2.5 InputStream 객체 생성 및 활용하기
__19.2.6 OutputStream 객체 생성 및 활용하기
__19.2.7 콘솔로 InputStream 사용하기
__19.2.8 콘솔로 OutputStream 사용하기
__19.2.9 입출력 필터링하기
19.3 char 단위 입출력
__19.3.1 Reader와 Writer의 상속 구조
__19.3.2 Reader의 주요 메서드
__19.3.3 Writer의 주요 메서드
__19.3.4 Reader/Writer 객체 생성 및 활용하기
__19.3.5 BufferedReader/BufferedWriter로 속도 개선하기
__19.3.6 InputStreamReader/OutputStreamWriter로 Reader/Writer 객체 생성하기
__19.3.7 PrinterWriter로 Writer 객체 생성하기
특별 부록 1 자바 네트워크
특별 부록 2 자바 API의 함수형 인터페이스
찾아보기