책소개
273개 코드로 누구나 혼자 쉽게 배우는 자바 완벽 가이드
이젠 나도! 자바
비전공자부터 프로그래머를 꿈꾸는 이공계 학생까지!
코딩을 처음 배우는 경우에는 언어의 문법을 배우고 나서 스스로 코드를 작성할 때, 어려움을 겪는 경우가 많다. 문법에 맞게 논리적인 코드를 작성하는 과정이 어렵기 때문이다. 이 책에서는 문법을 꼼꼼히 설명하고, 해당 예제 코드를 제공하여 배운 문법을 실제 코딩에 어떻게 사용하는지 학습한다.
누구나 쉽게 제대로 자바를 배우는 입문서!
이 책의 본문에는 273개의 예제 코드를 제공하고 있으며, 각 코드들은 직관적으로 이해할 수 있도록 주석과 다양한 실행 결과를 제시한다. 문법을 공부한 후에는 예제 코드를 통해서 각 문법이 어떻게 사용되는지를 확인할 수 있다. 이제 여러분도 마음껏 객체 지향 언어인 자바 코딩을 쉽고 확실하게 학습해 보자.
목차
머리말
자바 20일 계획표
이 책의 구성
챕터별 학습 어드바이스
Chapter 1. 자바 시작하기
1-1 자바의 등장
1-2 자바의 특징
컴파일러 언어이자 인터프리터 언어
객체 지향 언어
1-3 자바 설치하기(JDK11 + 이클립스)
1-4 이클립스 설치하기
1-5 자바 프로그램 작성하기
10진수, 2진수, 8진수, 16진수
byte 자료형
short 자료형
int 자료형
long 자료형
1-6 Hello world 출력하기
1-7 자바 파일 작성시에 지켜야 할 내용들
Chapter 2. 변수, 자료형, 주석
2-1 변수와 기본 자료형 이해하기
기본 자료형
변수 선언 및 초기화
식별자(identifier) 만드는 규칙
변수값 수정하기
변수값 출력하기
System.out.println()과 System.out.print() 사용하기
2-2 기본 자료형과 참조 자료형
2-3 논리 자료형(boolean)
2-4 문자 자료형(char)
2-5 정수 자료형(byte, short, int, long)
10진수, 2진수, 8진수, 16진수
byte 자료형
short 자료형
int 자료형
long 자료형
2-6 실수 자료형(float, double)
float 자료형
double 자료형
2-7 리터럴(literal) 상수
10진수, 2진수, 8진수, 16진수
2-8 기본 자료형과 참조 자료형
문자열 리터럴
2-9 변수 사용 시 주의점
변수 초기화
변수 범위
2-10 주석
Chapter 3. 계산을 위한 연산자
3-1 수치 연산자
이항 연산자(binary operators)
단항 연산자(unary operators)
3-2 비트 연산자(bitwise operators)
비트 연산자 AND - &
비트 연산자 OR - |
비트 연산자 XOR - ^
3-3 시프트(shift) 연산자
3-4 관계 연산자
3-5 논리 연산자
3-6 할당 연산자(assignment operator)
3-7 연산자 우선 순위
3-8 형 변환(type conversion)과 캐스트 연산자
자료형 간의 대소 관계
자동 형 변환(automatic conversion)
캐스트(cast) 변환
다양한 자료형이 섞인 계산식
리터럴이 포함된 계산식
Chapter 4. 코드의 수행 흐름을 바꾸는 조건문과 반복문
4-1 불리언 논리 연산자
4-2 조건문
if 조건문
switch 조건문
삼항 연산자
4-3 반복문
while 반복문
for 반복문
do ... while 반복문
4-4 break와 continue
break 구문
continue 구문
중첩된 반복문
Chapter 5. 배열과 문자열
5-1 1차원 배열
배열 선언 및 생성하기
배열 초기화
배열 출력하기
한 줄에 배열 여러 개 선언하기
배열의 참조값 이해하기
배열 복사하기
배열에 배열 대입하기
5-2 다차원 배열
2차원 배열
가변 배열
5-3 for...each 스타일 반복문
5-4 문자열(String)
Chapter 6. 메소드
6-1 메소드 이해하기
6-2 메소드 정의와 호출
6-3 메소드에 배열을 넘기거나 반환하는 경우
6-4 가변 인수
6-5 메소드 오버로딩(method overloading)
Chapter 7. 클래스와 객체
7-1 클래스 기본과 객체 생성
속성만 갖는 클래스
인스턴스를 생성하는 new 키워드
객체 생성과 객체 참조 변수
7-2 생성자(constructor)
디폴트 생성자(default constructor)
매개변수가 있는 생성자
생성자 오버로딩(constructor overloading)
7-3 인스턴스 변수와 클래스 변수
인스턴스 변수(instance variable)
클래스 변수(static variable)
7-4 this 키워드
생성자와 this 키워드
this 키워드를 이용한 메소드 호출
7-5 static 키워드
static 변수
static 메소드
static 블록과 non-static 블록
7-6 자바의 접근 제어와 private 키워드
private 키워드
public 키워드
디폴트 접근 제어
접근자 메소드와 변경자 메소드
7-7 자료형으로서의 클래스
7-8 인스턴스 배열
7-9 클래스 예제들
Chapter 8. 상속
8-1 상속 기본 개념
8-2 super 키워드
super 키워드를 이용하여 부모 생성자 호출하기
super 키워드를 이용하여 부모 멤버에 접근하기
8-3 메소드 오버라이딩(overriding)
8-4 final 키워드
final 클래스
final 인스턴스 변수
final 메소드
final 지역 변수
8-5 단일 상속과 다중 상속(multiple inheritance)
8-6 다형성(polymorphism)
다형성 이해하기
instanceof 연산자
다른 타입의 객체 간의 형 변환
Chapter 9. 패키지와 접근 제어
9-1 패키지(package)
9-2 패키지 생성하기
패키지 import하기
9-3 접근 제어
private 접근 제어
디폴트 접근 제어
protected 접근 제어
public 접근 제어
9-4 메소드 오버라이딩과 접근 제어
Chapter 10. 추상 클래스와 인터페이스
10-1 추상 클래스(abstract class)
추상 메소드
추상 클래스의 특징
10-2 자바 버전 7까지의 인터페이스
인터페이스 기초
인터페이스 내의 변수
인터페이스 상속하기
단일 상속 vs. 다중 상속
10-3 자바 버전 8 이후의 인터페이스
디폴트 메소드
정적 메소드
프라이빗(private) 메소드
Chapter 11. 유용한 패키지와 클래스들
11-1 java.lang.Object 클래스
equals() 메소드
toString() 메소드
11-2 java.lang.String/java.lang.StringBuffer/
java.lang.StringBuilder 클래스
java.lang.String
java.lang.StringBuffer
java.lang.StringBuilder
11-3 java.lang.Math 클래스
11-4 wrapper 클래스
Number 클래스
Byte / Short / Integer / Long 클래스
기타 wrapper 클래스
auto-boxing(오토박싱)/auto-unboxing(오토언박싱)
11-5 java.util.Random 클래스
Chapter 12. 예외 처리
12-1 프로그램 오류와 예외 처리
12-2 try ~ catch 구문으로 예외 처리하기
try ~ catch ~ finally를 이용하여 예외 처리하기
throws를 이용하여 예외 처리하기
12-3 예외 생성하기
Chapter 13. 자바 입출력
13-1 스트림(stream)
13-2 표준 입출력 클래스
Scanner 클래스
System 클래스
13-3 파일 입력 클래스
파일 저장 위치
FileInputStream을 이용한 파일 입력
FileReader를 이용한 파일 입력
13-4 파일 출력 클래스
FileOutputStream을 이용한 파일 출력
FileWriter를 이용한 파일 출력
13-5 보조 스트림 클래스
InputStreamReader, OutputStreamWriter
BufferedInputStream, BufferedOutputStream
BufferedReader, BufferedWriter
DataInputStream, DataOutputStream
Chapter 14. 제네릭스와 컬렉션 프레임워크
14-1 제네릭스 기본
제네릭 클래스
제한된 제네릭 타입
와일드카드 인수
14-2 컬렉션 프레임워크(Collection Framework)
14-3 List 인터페이스
ArrayList
LinkedList
Stack
Queue
Iterator와 ListIterator
14-4 Set 인터페이스
TreeSet
HashSet
14-5 Map 인터페이스
HashMap
TreeMap
Chapter 15. 스레드
15-1 스레드(thread)
15-2 Thread 클래스를 이용하여 스레드 생성하기
15-3 Runnable 인터페이스를 이용하여 스레드 생성하기
15-4 스레드에 이름 붙이기
15-5 스레드 조절하기
15-6 스레드에 우선순위 주기
Chapter 16. 람다 표현식, 열거형, 어노테이션
16-1 람다 표현식(lambda expression)
람다 표현식 만들기
람다 표현식 사용하기
블록 람다표현식 446
제네릭 함수형 인터페이스(Generic Functional Interface)
16-2 열거형 (enumeration)
16-3 어노테이션 (annotation)
저자
이지선
출판사리뷰
20일 만에 누구나 쉽게 공부하는 Java 입문서!
이젠 나도! 자바
클래스도 메소드도 상속도 두렵지 않다!
도해로 배우고 예제 코드 273개로 실습!
따뜻한 커피 한 잔 로고가 떠오르는 객제 지향 프로그래밍 언어 자바(Java)는 지난 1991년 제임스 고슬링을 필두로 한 썬마이크로시스템즈의 연구원들이 개발했고, 현재는 썬을 인수한 오라클이 자바에 대한 관리 및 유지 보수를 하고 있다.
어떤 운영체제에서나 시스템, 네트워크에서도 쉽게 작동되는 플랫폼 독립적인 객체지향 언어로 인터넷 환경에서 특히 각광받는 자바는 간단하면서도 보안에 강하고 이식서이 높아 시스템에 관계없이 최적의 성능을 이끌어 내 현업 개발자가 가장 많이 사용하는 프로그래밍 언어로 꼽힌다.
자바는 유닉스를 모태로 하여 C와 비슷한 문법을 갖고 있으며 컴퓨터나 정보처리를 전공하는 대학생이라면 필수 언어이다. 대부분 C와 함께 자바도 공부하게 되는데 이 자바를 누구보다 쉽게 공부할 수 있도록 서강대 이지선 교수가 강의 경험을 바탕으로 20일 계획표에 따라 재구성한 입문서가 바로 이 책이다.
책 앞부분에는 자바 통합개발환경인 이클립스(eclipse) 설치 방법 따라하기가 나오며 전체 코드 273개는 실행하면서 학습할 수 있도록 했다. 특히 비전공자도 쉽게 자바 문법을 이해할 수 있도록 많은 부분을 도해화하였으며 예제 코드를 실행해볼 수 있도록 문법과 실행 결과를 나란히 배치하였다.