본문 바로가기

추천 검색어

실시간 인기 검색어

손안의 자바

초보자를 위한 자바 프로그래밍의 핵심 + 알파
김지훈 , 이현우 지음
에이콘온

2024년 12월 02일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 pdf (23.73MB)
ISBN 9791194409151
지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
교보eBook App 듣기(TTS) 가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.

PDF 필기가능 (Android, iOS)
소득공제
소장
정가 : 24,000원

쿠폰적용가 21,600

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 200원

작품소개

이 상품이 속한 분야

정보시스템 감리를 통해 70여 개 이상의 프로젝트 소스코드를 검사했다. 이 소스코드 검사를 통해 실제 프로젝트에서 사용하는 문법이 무엇이며, 개발자들이 자주 실수하는 것이 무엇인지 알게 됐다. 이 책은 이러한 경험을 바탕으로 작성했다. 초보 개발자들에게 실제 프로젝트에서 사용하는 핵심 문법 위주로 자바를 소개하며, 최신 버전의 자바의 기능과 관련해 앞으로 사용될 것 같다고 판단되는 장치들을 포함시켰다. 많은 자바 입문자가 이 책을 읽고 효율적인 길을 걸을 수 있기를 바란다.
1부. 자바 기본
1장. 자바를 시작하며
자바란?
개발 환경 구축하기
자바에서의 명명 규칙

2장. 변수와 상수
변수의 이해와 활용
변수의 타입
논리형 - boolean
문자형 - char
정수형 - byte, short, int, long
실수형 - float, double
형변환
상수

3장. 연산자
연산자 종류와 우선순위
단항 연산자
논리 부정 연산자 !
부호 연산자 +, -
비트 전환 연산자 ~
증감 연산자 + + , - -
산술 연산자
나머지 연산자 %
사칙 연산자 +, -, , /
시프트 연산자 <<, >>, >>>
비교 연산자
대소비교 연산자 <, >, <=, >=
등가비교 연산자 ==, !=
논리 연산자
논리 연산자 &&, ||
비트 연산자 &, |, ^

4장. 실행흐름의 컨트롤
조건문 if문, switch문
if문
switch문
반복문 for, while, do~while
do~while문
for문
while문
break와 continue문
break문
continue문
변수의 범위

5장. 배열
배열(array)의 필요성
배열의 선언과 생성 그리고 초기화
배열의 사용
배열의 복사
다차원 배열
가변 배열
배열을 벗어난 인덱스
System.arraycopy와 매뉴얼 복사 중 누가 빠른가?
Arrays - 배열을 위한 유틸 클래스

6장. 객체 지향 프로그래밍의 개념
객체 지향 프로그래밍이란?
객체
객체 간 상호작용
캡슐화
객체와 클래스 그리고 객체 참조자

7장. 클래스, 변수,메소드
자바 10에서의 지역 변수 타입 추론
클래스 선언
클래스 사용
클래스 구성 요소
필드(멤버 변수)
필드 선언
필드 사용
메소드
Void
메소드 오버로딩
생성자

8장. 패키지와 임포트
패키지
임포트(import)

9장. 상속과 오버라이딩 그리고 다형성
상속의 개념
상속
오버라이딩
다형성
상속과 생성자
상속관계에서의 메소드 호출 순서

10장. 제어자
접근 제어자
Private
Protected
Public
프로그래밍 가이드 - 접근 제어자의 엄격한 적용
프로그래밍 가이드 - 멤버변수에 대한 직접 접근을 막아라
static 제어자
정적 메소드의 재정의 불가
final 제어자

11장. 추상 클래스와 인터페이스
추상 클래스
인터페이스
인터페이스를 사용한 다중상속
자바 8 이후의 인터페이스 변화
인터페이스 private 메소드와 인터페이스 private 정적 메소드
인터페이스 디폴트(default) 메소드
인터페이스 정적(static) 메소드
자바 8 이후의 인터페이스를 사용한 다중상속
자바8 이후의 ::를 사용한 메소드 참조 그리고 함수형 인터페이스
빌트인 함수형 인터페이스
함수형 인터페이스

12장. 중첩 클래스
중첩 클래스 사용 이유
중첩 클래스 분류
내부 클래스
정적 내부 클래스
메소드 로컬 내부 클래스
익명 내부 클래스
유사 중첩 클래스

13장. 오류 처리
오류 처리 소개
오류 클래스 구조 및 기본 동작 방식
예외 캐치 처리 순서
비즈니스 예외
실 프로젝트에서 많이 사용되는 예외 처리 방안
finally 문장
try-with-resources 문장
인터페이스나 추상 클래스에서의 예외 쓰로우 선언

14장. 자주 사용하는 자바 기본 API
Object 클래스
clone()
toEquals()
toString()
프로그래밍 가이드 - Object의 toString()을 재정의하라
String 클래스
Math 클래스
래퍼 클래스
Random 클래스
java.util.regex 패키지
BigInteger
BigDecimal
Calendar와 Date 그리고 DateFormat
자바 8부터 지원하는 새로운 날짜 지원 API
날짜 및 시간 객체에서 정보 조회하기
날짜 및 시간 알아내기
날짜와 시간 더하거나 빼기
날짜와 시간 변경하기
특정 날짜 계산하기
Duration을 사용한 초, 나노초 기반 차이
Period를 사용한 날짜 기반 차이
날짜 및 시간 비교
날짜 및 시간 차이 계산
날짜 포맷팅
ZonedDateTime으로 세계시 다루기

15장. 제네릭
들어가면서
제네릭의 필요성
제네릭을 이용한 첫번째 클래스 작성하기
제네릭 동작 방식
제네릭 기본 문법
구체화 타입의 자식 타입 사용 가능
정적 요소에 제네릭 타입 사용 불가
제네릭 클래스의 new 불가
제네릭 타입 구체화 시 배열 불가
제네릭 타입에 제약 조건 두기
제네릭 인터페이스
제네릭 메소드
제네릭 와일드카드
좀 더 복잡한 제네릭 메소드와 와일드카드의 예
파라미터에는 와일드카드가 없는 경우
파라미터에 와일드카드가 두개 있는 경우
파라미터에 와일드카드가 한개 있는 경우
다이아몬드 연산자

16장. 컬렉션 프레임워크
HashSet
ArrayList
Vector
HashMap과 Hashtable
Iterator
리스트 대 배열
Comparator를 사용한 목록 정렬하기
목록에 요소 추가 및 삭제하기
foreach문에서의 추가 및 삭제 시 예외발생
Iterator를 사용한 요소 삭제
인덱스를 사용한 for문에서의 삭제 시 정합성 문제
인덱스를 사용한 요소 삭제 및 추가

17장. 열거형(Enum 타입)
들어가면서
처음 만나는 열거형
열거형에 데이터 연결하기
여러 형태의 열거형 정의 방법
열거형에 관한 유용한 메소드

18장. 어노테이션
들어가면서
어노테이션 맛보기
JDK가 제공하는 표준 어노테이션
커스텀 어노테이션 작성을 위한 기초 지식
@Documented
@Inherited
@Repeatable
@Retention
@Target
커스텀 어노테이션 작성하기
프로그래밍 가이드 - 네이밍 규칙보다는 어노테이션을 사용해 식별하라

19장. 람다식
들어가면서
람다식 개념
람다식 활용 예
함수형 인터페이스
람다식을 조합하기 위한 빌트인 함수형 인터페이스의 장치
람다 캡처링

20장. 자바 8의 스트림
들어가면서
스트림을 왜 사용하는가?
스트림 동작 방식
Stream의 인스턴스 메소드 collect()
Stream의 인스턴스 메소드 filter()
Stream의 인스턴스 메소드 map()
Stream의 인스턴스 메소드 sorted()
스트림 예제 분석하기
스트림 좀더 알아보기
다양한 스트림 메소드
Collectors.groupingBy() 메소드
Finding과 Matching 메소드
foreach 메소드
Stream의 mapToInt(), mapToLong(), mapToDouble() 메소드
Stream의 Reduce() 메소드
병렬처리를 위한 parallelStream
복합객체의 스트림을 세부 객체의 스트림으로 분해하는 flatMap() 메소드
중복 요소를 제거하는 메소드 - distinct()
최대 요소의 개수를 제한하는 메소드 - limit()
특정 개수를 건너띄는 메소드 - skip()
필터 기능을 제공하는 메소드 - filter(), distinct(), limit(), skip()

21장. 스레드
들어가면서
스레드란?
동시성와 병렬성
첫 번째 스레드 프로그램
다양한 스레드 생성 방법
스레드 세이프
동기화 메소드 및 동기화 블록
멀티스레드 프로그래밍의 일반적인 패턴 - 스레드 풀
서버(Was)의 스레드 프로그래밍 모델
스레드 로컬
결과 값이 있는 동시 수행
Fork/Join 프레임워크의 필요성
ForkJoin을 사용한 동시 처리

22장. I/O 스트림 및 파일
들어가면서
I/O 스트림 개념
다양한 I/O 스트림
FileInputStream
FileOutputStream
ByteArrayInputStream /ByteArrayOutputStream
버퍼링 개념
BufferedInputStream/BufferedOutputStream
파일 다루기
File 생성자
I/O 스트림 등에서 파일이름 문자열 대신 File 사용하기
기존 파일에 스트링 덧붙이기
디렉터리 생성하기
마지막 수정 날짜 변경하기
마지막으로 수정된 날짜 구하기
이름 변경하기
파일/디렉터리 존재 여부 확인
파일 사이즈 구하기
파일 삭제하기
파일 생성하기

23장. 네트워크 프로그래밍
들어가면서
네트워크 환경 이해
MAC
라우터
방화벽
스위치
도메인
TCP/IP 4 계층
소켓 서버 기본 구조 이해하기
소켓 클라이언트 프로그램 기본 구조 이해하기
개선된 소켓 서버 프로그램
UDP 소개 및 예제

24장. Java NIO
들어가면서
NIO 이유
채널과 버퍼 그리고 셀렉터 개념 알아보기
버퍼 좀더 알아보기
버퍼 생성
버퍼 위치 속성
채널과 버퍼 사용 패턴
NIO 소켓 서버 프로그램
IO vs NIO 선택

2부. 자바 확장
1장. 생성자 관련
들어가면서
프로그래밍 가이드 - 생성자 대신 정적 팩토리 메소드 사용을 검토하라
프로그래밍 가이드 - 생성자 대신 빌더 사용을 검토하라
프로그래밍 가이드 - 유틸리티 클래스 생성자를 private로 하라

2장. 가비지 컬렉션
들어가면서
프로그래밍 가이드 - 쓸모없는 객체참조를 제거하라
프로그래밍 가이드 - 종결자를 중요 작업에 사용하지 않아야 한다

3장. 객체 복사하기
들어가면서
클론을 이용한 복사
복사 생성자나 복사 정적 팩토리 메소드 사용한 복사방법을 고려하라

4장. 클래스 설계 가이드
들어가면서
프로그래밍 가이드 - 가능한 불변 클래스로 설계하라
프로그래밍 가이드 - 상속보다는 컴포지션을 사용하라

5장. 그 밖의 기타 사항
클래스패스를 고려한 클래스 실행
java로 클래스 실행 시 인수 전달하기
라이브러리란?
Maven 환경 소개

이 책의 대상 독자
█ 프로그래밍 경험이 없는 자바 입문자
█ 개발 관련 경험이 있으면서 자바를 시작하는 개발자
█ 기존에 작성된 코드를 생각 없이 사용하는 개발자

이 책에서 다루는 내용
█ 초보자를 위한 자바 문법 핵심 + 알파
█ 실제 프로젝트에서 사용하는 문법 위주의 자바 프로그래밍
█ 좋은 프로그램을 위한 기본적인 가이드
█ 개발자들이 실수하기 쉬운 개념
█ 정부가 주관하는 수십 개의 프로젝트에서 사용하지 않는 문법 제외

작가정보

저자(글) 김지훈

김지훈
동국대학교 컴퓨터공학과를 나왔으며, 홍익대학교 대학원 컴퓨터공학과에서 시스템 프로그래밍을 전공해 석사 학위를 받았다. LG CNS에서 SW 아키텍트를 수행했으며, KT ds에서 연구원을 지냈고 현재는 정보기술감리원에서 감리사로 근무 중이다. 안드로이드, HTML5, 빅데이터, 보안 분야에서 저술과 번역 작업을 수행했으며, 정보시스템 감리에서 주로 수행하는 분야는 시스템 구조 및 보안 분야이다.

저자(글) 이현우

이현우
대한민국 공군 장교로 방공전산서버 운영을 하면서 IT 관련 경력을 시작했다. 이후 LG CNS에서 차세대 응용개발 프로그램을 수행했으며, 모바일 개발에 관심을 가지고 KT ds 연구소의 모바일 플랫폼 개발을 수행했다. 이후 정보시스템감리사 자격증을 취득한 후 한국 공공기관의 정보시스템 감리업무를 수행하고 있으며, IBK기업은행, 삼성생명, 산업은행, 한국전력 등의 많은 공공기관의 감리 업무를 수행했다. IT 강의를 하는 것을 좋아하며 시큐어코딩 및 데이터베이스, 자바프로그램에 대한 강의를 한국전력 및 한국소프트웨어 기술진흥협회(KOSTA), 한국ICT융합협동조합 등에서 수행했다. 최근 화제가 되고 있는 워라벨을 중시하며, 매번 어제보다 나은 오늘이 되기 위해서 노력하지만 매번 부족함을 느끼고 있는 개발자이다.

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다. (5,000원 이상 상품으로 변경 예정, 2024년 9월 30일부터 적용)
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다. (5,000원 이상 eBook으로 변경 예정, 2024년 9월 30일부터 적용)
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품 / 선물받은 eBook / 오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    손안의 자바 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    손안의 자바 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    • 콘텐츠 다운로드 또는 바로보기 완료 후 리뷰 작성 시 익일 제공
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    손안의 자바
    초보자를 위한 자바 프로그래밍의 핵심 + 알파
    저자 모두보기
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글바이액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글바이액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)