[혼공자] 1주차 _ 혼자 공부하는 자바(개정판)
혼공단 - 혼공자, 혼자 공부하는 자바(개정판)
■ 공부한 내용
# | 진도 | 기본 숙제(필수) | 추가 숙제(선택) |
1주차 (7/1 ~ 7/7) |
Chapter 01 ~ 03 | JDK 설치 화면 인증하기 | p.110 (02-3) 확인 문제 9번에 들어갈 코드를 2가지 이상 작성해보기 |
□ Chapter 01
- JDK(Java Development Kit): 자바 개발 도구의 줄임말
. 자바로 프로그램을 개발할 수 있는 실행 환경(JVM)과 개발 도구(컴파일러) 등을 제공
- JVM(Java Virtual Machine): 바이트 코드 파일을 운영체제를 위한 완전한 기계어로 번역하고 실행하는 역할
. JVM은 java 명령어에 의해 구동
- 바이트 코드 파일(.class): 자바 소스 파일을 javac 명령어로 컴파일한 파일
- 환경 변수: 운영체제가 실행하는 데 필요한 정보를 제공해주는 변수
. JDK를 설치한 후 명령 라인(명령 프롬프트, 터미널)에서 컴파일러(javac)와 실행(java) 명령어를 사용 시
→ JAVA_HOME 환경 변수를 등록하고 Path 환경 변수를 수정하는 것을 추천
- 이클립스(Eclipse): 무료로 사용할 수 있는 오픈 소스 통합 개발 환경(IDE: Integrated Development Environment)
. IDE란 프로젝트 생성, 자동 코드 완성, 디버깅 등과 같이 개발에 필요한 여러 가지 기능을 통합적으로 제공해주는 툴
- 퍼스펙티브(Perspective): 이클립스에서 프로젝트를 개발할 때 유용하게 사용할 수 있는 뷰(View)들을 미리 묶은 이름
□ Chapter 02
- 변수: 값을 저장할 수 있는 메모리 번지에 붙인 이름 (출력문이나 연산식 내부에서 사용)
. 기본 타입: 정수(byte/short/int/long), char('하나의 문자'), String("문자열"), 실수(float/double), boolean(true/false)
- 변수 선언: 변수에 어떤 타입의 데이터를 저장할지, 변수 이름이 무엇인지를 결정
- 변수 사용: 변수의 값을 읽거나 변경
- 변수 사용 범위: 변수는 자신이 선언된 위치에서 자신이 속한 블록 내부까지만 사용이 가능 (밖에서는 사용 불가)
- 자동 타입 변환: 값의 허용 범위가 작은 타입이 허용 범위가 큰 타입으로 저장될 때 발생
- 강제 타입 변환: 값의 허용 범위가 큰 타입을 허용 범위가 작은 타입으로 쪼개어 저장하는 것
- 문자열 결합 연산: 문자열과 + 연산을 하면 다른 피연산자도 문자열로 변환되어 결합
- 문자열을 정수나 실수 타입으로 변환: 정수[ Integer.parseInt() ], 실수[ Double.parseDouble() ]
- System.out.println(): 괄호에 주어진 매개값을 모니터로 출력하고 개행
- System.out.print(): 괄호에 주어진 매개값을 모니터로 출력만 하고 미개행
- System.out.printf(): 괄호에 주어진 형식대로 출력
. 형식: 정수(%d), 실수(%f), 문자열(%s), 특수문자(\t, \n, %%)
- System.in.read(): 키보드에서 입력된 키코드를 하나씩 읽기 (2개 이상의 키가 조합된 한글은 못읽음)
- Scanner: 키보드로부터 입력된 내용을 통 문자열로 읽기
□ Chapter 03
- 연산자: 연산의 종류를 결정짓는 기호
- 피연산자: 연산식에서 연산되는 데이터(값)
- 연산 방향: 대부분 연산자는 왼쪽에서 오른쪽으로 연산 되지만, 증감(++,--)과 대입(=,+=,-=)은 오른쪽에서 왼쪽으로 연산
- 연산 우선순위: 증감, 산술, 비교, 논리, 조건, 대입 순이지만 괄호로 감싼 연산이 최우선순위를 갖음
- 연산자 종류: 산술(+,-,*,/,%), 증감(++,--), 비교(==,!=,>,<,>=,<=,instanceof), 논리(!,&,|,&&,||), 대입(=,+=,-=,*=,/=,%=), 삼항( ? : ) 등
■ 기본 숙제
JDK 설치 화면 인증하기
- OpenJDK 설치: https://openjdk.org/ 접속 후, 살펴보면 현재 최신은 22 버전
. https://jdk.java.net/22/ 로 이동해서 OS에 맞는 파일 다운로드 후, 압축 풀기 → 환경 변수 및 path 추가
■ 추가 숙제(선택)
p.110 (02-3) 확인 문제 9번에 들어갈 코드를 2가지 이상 작성해보기
// 1: (int) (2.0 + 1.8 + 2 + 3.9) → (int) (9.7) → 9
int result = (int) (var1 + var2 + (int) var3 + Float.parseFloat(var4));
// 2: (int) (2.0 + 1 + 2.5 + 3.9) → (int) (9.4) → 9
int result = (int) (var1 + (int) var2 + var3 + Double.parseDouble(var4));
// 3: (int) (2.0 + 1.8 + (int) (2.5 + 3.9)) → (int) (3.8 + 6) → 9
int result = (int) (var1 + var2 + (int) (var3 + Double.parseDouble(var4)));
// 4: (int) (2.0 + 1.8) + (int) (2.5 + 3.9)) → (int) (3.8) + (int) (6.4) → 9
int result = (int) (var1 + var2) + (int) (var3 + Double.parseDouble(var4));