logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

방구석 부트캠프 자바

방구석 부트캠프 자바

(기본으로 돌아가 체계적으로 시작하는 견고한 개발자 되기)

김경록 (지은이)
리코멘드
32,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
28,800원 -10% 0원
1,600원
27,200원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
aladin 25,600원 -10% 1280원 21,760원 >

책 이미지

방구석 부트캠프 자바
eBook 미리보기

책 정보

· 제목 : 방구석 부트캠프 자바 (기본으로 돌아가 체계적으로 시작하는 견고한 개발자 되기)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 자바
· ISBN : 9791194084051
· 쪽수 : 664쪽
· 출판일 : 2024-10-21

책 소개

자바를 실용적이고 체계적으로 학습하기 위한 입문서다. 단순히 자바 언어의 문법, 명령어 등과 같은 기술 습득에 그치지 않고 만들고자 하는 것을 논리적 사고 단계에 따라 하나씩 업그레이드하면서 상황에 맞게, 예측할 수 있게, 읽기 편하게 코딩하는 방법을 알려주는 것에 초점을 맞추고 있다.

목차

CHAPTER 01 자바 프로그래밍 틀잡기
[DAY 01] 자바와 객체 지향 프로그래밍 알아보기
_객체 지향 프로그래밍을 배워 볼 필요
_객체 지향 프로그래밍 언어, 자바
_객체의 의미
_추상화의 의미

[DAY 02] 개발 환경 구축하기
_인텔리제이를 쓰는 이유
_인텔리제이 설치하기
_인텔리제이 실행하기
_인텔리제이에서 프로젝트 만들기
_인텔리제이 프로젝트 화면 살펴보기
_인텔리제이 환경 설정하기

[DAY 03] Hello를 출력하는 기능 만들기
_클래스 선언하기
_메서드 선언하기
_명령 추가하기
_메인 메서드 만들기
_인스턴스화하기
_Hello 대신 1+1 출력하기


CHAPTER 02 입력과 출력
[DAY 04] 한 글자씩 입력받기
_프로그래밍에서 입력받는다는 것의 의미
_InputStreamReader로 입력받기
_아스키 코드의 역할
_주석의 작동 원리
_두 글자씩 데이터 입력받기

[DAY 05] 버퍼를 이용해 한 줄 단위로 입력받기
_BufferedReader로 입력받기
_두 개의 숫자 입력받기
_입력받은 숫자 더하기

[DAY 06] 숫자형 데이터를 입력받아 안내문 출력하기
_Scanner로 입력받은 정수 더하기
_Scanner로 입력받은 문자 합치기
_입력 시 안내문 출력하기

[DAY 07] 여러 가지 방법으로 출력하기
_메인 메서드에서 바로 실행하기
_printf()로 포매팅해서 출력하기
_한 줄 띄우기
_소수점 출력하기

[DAY 08] 입력과 출력 활용하기(종합 예제)
_입력받은 세 개의 숫자 평균 구하기
_입력받은 값을 곱해서 세 자리마다 ,로 구분해서 출력하기


CHAPTER 03 변수와 타입
[DAY 09] 변수를 선언하고 초기화하기
_변수의 의미
_타입의 의미
_변수의 크기
_변수가 필요한 경우
_변수 선언하기
_변수 초기화하기
_변수 선언과 초기화를 한 번에 하기
_상수 선언과 값 할당하기
_강타입 언어 vs 동적 타입 언어

[DAY 10] 변수와 상수 활용하기(종합 예제)
_변수에 값을 담아 출력하기
_변수에 담았던 값 출력하기
_변수에 담긴 값 바꾸기

[DAY 11] 멤버 변수 알아보기
_멤버 변수의 의미
_멤버 변수가 필요한 경우
_멤버 변수 선언하기
_멤버 변수로 접근하기
_가비지 컬렉션

[DAY 12] 멤버 변수 활용하기(종합 예제)
_2D 좌표 평면상의 점 표현하기
_User를 클래스와 멤버 변수로 표현하기
_공장(Factory)을 클래스와 멤버 변수로 표현하기

[DAY 13] 숫자와 논리를 나타내는 타입 알아보기
_원시 타입과 참조 타입
_적절한 타입 사용의 중요성
_소수점을 다루는 float와 double
_true와 false를 저장하는 boolean 타입

[DAY 14] 데이터 타입을 변환하는 타입 캐스팅
_원시 타입 간 타입 캐스팅하기
_문자열(String)을 정수형(int)으로 타입 캐스팅하기
_소수점 문자열을 실수형으로 변환하기

[DAY 15] 문자열을 나타내는 String 타입 알아보기
_문자열 연결하기
_문자열 포매팅하기
_문자열 자르기
_문자열 비교하기
_문자열에서 문자열의 위치
_문자열 분리하기


CHAPTER 04 배열
[DAY 16] 배열 알아보기
_배열 선언하기
_배열을 선언하면서 초기화하기
_배열 값에 접근하기
_배열에 값 할당하기
_여러 가지 타입의 배열 선언하기
_참조 타입의 배열 선언하기
_배열을 멤버 변수로 사용하기

[DAY 17] 2차원 배열 알아보기
_2차원 배열 선언하기
_2차원 배열 값에 접근하기
_2차원 배열에 값 할당하기
_배열의 길이
_2차원 배열의 길이

[DAY 18] 2차원 배열 활용하기(종합 예제)
_가로 한 줄에 값 채우기
_세로 한 줄에 값 채우기
_배열 인덱스 간에 값 바꾸기
_한 줄로 숫자를 입력받아서 합계 구하기


CHAPTER 05 연산자
[DAY 19] 연산자 알아보기
_연산자와 피연산자
_연산자의 특징
_연산자의 종류
_연산자의 우선순위

[DAY 20] 산술 연산자 알아보기
_사칙 연산자와 나머지 연산자의 종류
_숫자를 산술 연산하기
_변수를 산술 연산하기

[DAY 21] 산술 연산자 활용하기(종합 예제)
_배열의 중간에 있는 숫자 구하기
_초를 "분:초"로 표현하기
_나머지 구하기

[DAY 22] 대입 연산자 알아보기
_변수에 값 누적하기
_문자열 누적하기
_10으로 나눈 결과를 누적해 자릿수 더하기

[DAY 23] 복합 대입 연산자와 증감 연산자 알아보기
_복합 대입 연산자의 종류
_복합 대입 연산자로 변수에 값 누적하기
_자릿수 더하기에 복합 대입 연산자 적용하기
_증감 연산자의 종류
_증감 연산자로 변수 값 증감시키기

[DAY 24] 대입, 복합 대입, 증감 연산자 활용하기(종합 예제)
_대입 연산자로 배열에 있는 모든 값 더하기
_증감 연산자로 배열의 인덱스 값 출력하기
_복합 대입 연산자로 복리 계산하기

[DAY 25] 비교 연산자, 논리 연산자, 조건 연산자 알아보기
_비교 연산자의 종류
_비교 연산자로 변수 값 비교하기
_논리 연산자의 종류
_AND 연산자로 조건 비교하기
_OR 연산자로 조건 비교하기
_NOT 연산자로 조건 비교하기
_조건 연산자

[DAY 26] 비교, 논리 연산자 활용하기(종합 예제)
_비교 연산자로 배열 값 간 비교하기
_AND 연산자로 보일러 온도 체크하기
_OR 연산자로 승진 가능 여부 확인하기
_NOT 연산자로 미성년자 여부 확인하기


CHAPTER 06 제어문
[DAY 27] if문 알아보기
_if문 사용하기
_비교 연산으로 논리값 받기
_논리 연산으로 논리값 받기
_else 사용하기
_else if 사용하기

[DAY 28] if문 활용하기(종합 예제)
_홀수인지 짝수인지 판단하기
_승진 대상자 확인하기
_배열에서 자리 바꾸기
_병원 진료 부위 확인하기

[DAY 29] switch-case문 알아보기
_switch-case문 사용 방법
_switch-case문을 개선한 switch 표현식
_표현식과 문의 차이
_switch 표현식의 결과를 변수에 대입하기

[DAY 30] switch-case문 활용하기(종합 예제)
_진료 시간 표현하기
_권한에 따른 접근 제어

[DAY 31] for문 알아보기
_반복문 사용하기
_반복 횟수와 시작 숫자 제어하기
_역순으로 반복하기
_i 값을 2씩 늘리기
_1부터 n까지 무한히 출력하기
_2i를 조건식의 비교 대상으로 삼기
_for-each문

[DAY 32] for문 활용하기(종합 예제)
_구구단 출력으로 반복문 익히기
_1부터 n까지 합 구하기
_n! 구하기

[DAY 33] while문과 do-while문 알아보기
_while문 사용 방법
_do-while문 사용 방법

[DAY 34] while문과 do-while문 활용하기(종합 예제)
_while문으로 카운트 다운하기
_while문으로 팩토리얼(n!) 구하기
_do-while문과 switch 표현식으로 고객센터 메뉴 구현하기

[DAY 35] 반복문과 조건문 함께 쓰기
_if문과 for문으로 홀수의 합 구하기
_while문으로 홀수의 합 구하기
_약수 구하기
_소수인지 판별하기
_최대 값 구하기
_break로 반복문 멈추기
_while문에서 break로 반복문 멈추기
_continue로 반복문으로 돌아가기


CHAPTER 07 메서드
[DAY 36] 메서드 선언하고 호출하기
_클래스와 메서드
_메서드 선언하기
_메서드 호출하기
_메서드를 사용하는 이유

[DAY 37] 메서드 구성 요소 알아보기
_접근 제어자
_리턴 타입
_메서드 이름

[DAY 38] 리턴 알아보기
_리턴 사용 방법
_참조 타입 리턴하기
_리턴값을 이용하여 조건 연산하기

[DAY 39] 매개변수 알아보기
_메서드에 매개변수 사용하기
_두 개 이상의 매개변수 사용하기
_원시 타입을 매개변수로 전달하는 방식 이해하기
_참조 타입을 매개변수로 전달하는 방식 이해하기

[DAY 40] 리턴과 매개변수 활용하기(종합 예제)
_String 타입의 매개변수 사용하기
_On인지 Off인지 알려 주는 메서드 사용하기

[DAY 41] 메인 메서드 알아보기
_메인 메서드 구성 요소
_접근 제어자 public
_static 키워드
_리턴 타입 void
_메서드 이름 main
_매개변수 String[] args

[DAY 42] 스태틱, 게터, 세터 메서드 알아보기
_스태틱 메서드 선언하기
_스태틱 메서드 호출하기
_게터 메서드와 세터 메서드가 필요한 순간
_게터, 세터 사용하기

[DAY 43] 스태틱 메서드 활용하기(종합 예제)
_스태틱 메서드로 중복된 코드 제거하기
_스태틱 메서드로 구구단 선택 출력하기
_게터, 세터를 Machine 클래스에 적용하기

[DAY 44] 메서드 오버로딩 활용하기
_메서드 오버로딩하기
_메서드 오버로딩으로 주차 정산하기


CHAPTER 08 생성자
[DAY 45] 생성자 알아보기
_생성자 선언하기
_생성자로 초기 값 설정하기

[DAY 46] this를 사용하여 생성자로 초기 값 설정하기
_this를 사용하여 멤버 변수의 초기 값 설정하기
_여러 개 멤버 변수의 초기 값 설정하기
_상황에 따라 유동적으로 매개변수의 초기 값 설정하기

[DAY 47] 생성자 오버로딩 알아보기
_생성자 오버로딩하기
_this()로 다른 생성자 호출하기


CHAPTER 09 상속과 추상 클래스
[DAY 48] 상속과 오버라이딩 알아보기
_상속 사용 방법
_메서드 오버라이딩하기
_메서드 오버라이딩으로 관리자 계정 만들기

[DAY 49] 추상 클래스 알아보기
_추상 클래스 선언하기
_추상 클래스를 상속받아 구현하는 방법
_추상 클래스 사용하기

[DAY 50] 추상 클래스 활용하기(종합 예제)
_직각삼각형 모양으로 별표 출력하기
_피라미드 모양으로 별표 출력하기


CHAPTER 10 인터페이스
[DAY 51] 인터페이스 알아보기
_인터페이스 선언하기
_인터페이스 구현하기
_인터페이스를 사용하는 이유

[DAY 52] 인터페이스 다중 상속하기
_다중 상속 구현하기
_다중 상속 사용하기

[DAY 53] 인터페이스 활용하기(종합 예제)
_ 최대 값 구하기
_최대 값을 이용해 최소 값 구하기
_인터페이스로 최대 값과 최소 값 동시에 구하기

[DAY 54] 의존성 주입 활용하기
_의존성 주입 적용하기
_변수를 선언하지 않고 의존성 주입하기
_익명 클래스 사용하기
_람다 표현식 사용하기


CHAPTER 11 자바 더 알아보기
[DAY 55] 제네릭 알아보기
_제네릭 선언 방법
_인터페이스에 제네릭 적용하기
_두 개 이상의 타입을 받는 인터페이스에 제네릭 적용하기
_클래스에 제네릭 적용하기
_내장 인터페이스에 제네릭 적용하기
_일반적으로 사용하는 타입 매개변수

[DAY 56] enum 알아보기
_열거 타입 선언 방법
_열거 타입의 상수에 값 지정하기
_switch 표현식에 열거 타입 활용하기

[DAY 57] 예외 알아보기
_예외 처리란
_예외 처리하기
_catch 소괄호 블록에 있는 변수 사용하기
_예외 발생 여부와 상관 없이 코드 실행하기
_throws를 이용한 예외 처리하기
_예외 처리 활용하기
_예외와 에러의 차이점

[DAY 58] 람다 표현식 알아보기
_람다 표현식 선언 방법
_매개변수가 없는 인터페이스 구현하기
_매개변수가 한 개인 인터페이스 구현하기
_매개변수가 두 개인 인터페이스 구현하기
_람다 표현식의 제약사항

저자소개

김경록 (지은이)    정보 더보기
12년에 걸쳐 백엔드 , 프론트엔드 , 인프라 , DB에 기반을 두고 다양한 프로젝트를 경험하고 있다. 현재는 스마트 팩토리 기업 3View에서 백엔드 & 임베디드 개발자로 일하고 있다. 저서로는 『파이썬으로 익히는 말랑말랑 알고리즘 』(비제이퍼블릭, 2022), 『한입에 웹 크롤링 』(비제이퍼블릭, 2018), 『Node.js 200제』(정보문화사, 2018), 역서로는 『웹 데이터 수집의 기술』(한빛미디어, 2017) 등이 있다. ▶ 블로그 | https://krksap.tistory.com
펼치기

책속에서

자동차를 예로 들어 볼까요? 자동차는 엔진, 바퀴, 서스펜스 등 수많은 부품으로 이루어져 있습니다. 부품을 하나하나 만들고 이것들을 서로 연결해서 조립합니다. 그러면 자동차가 완성되죠. 객체 지향 프로그래밍도 이와 유사합니다. 객체라는 부품을 각각 만들고, 그 객체들이 상호 작용할 수 있도록 엮어서 프로그램을 만드는 방법입니다.


객체는 ‘동사의 행위가 미치는 대상’입니다. 예를 들어 자동차는 ‘차 문을 연다’, ‘시동을 건다’, ‘에어컨을 켠다’, ‘음악을 듣는다’, ‘운전한다’, ‘깜박이를 켠다’, ‘주차한다’, ‘시동을 끈다’ 등과 같은 행위의 객체입니다. 이를 프로그래밍에 연결시켜 보면, 객체란 프로그램상에서 어떤 역할을 수행하는 요소, 데이터, 기능 등이라고 할 수 있습니다.


추상화란 복잡한 행위를 단순화해서 그 행위의 본질적인 특징에만 집중하는 것을 의미합니다. 옛날 자동차의 경우 열쇠를 꽂고 돌려서 시동을 걸었습니다. 요즘 자동차는 그저 버튼만 누르면 시동이 걸리죠. 이 두 가지 행위의 본질적인 특징은 ‘시동을 건다’입니다. 즉, ‘열쇠를 꽂고 돌린다’와 ‘버튼을 누른다’와 같은 두 가지 행위를 ‘시동을 건다’로 추상화할 수 있습니다. 한 가지 비슷한 예를 들어 보면 옛날 자동차는 수동으로 기어를 변속했습니다. 반면 요즘 자동차는 모드를 D에 놓기만 하면 자동으로 변속이 되죠. 이 행위 역시 ‘변속한다’로 추상화할 수 있습니다. 이러한 특징을 모두 모아 옛날 자동차와 요즘 자동차를 ‘자동차’라고 추상화할 수도 있습니다.


이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책
9791194084075