230418~19 day12~13 개념 정리

Jin·2023년 5월 25일
0

codenotion

목록 보기
10/90
post-thumbnail
소스파일
파일이름.java
컴파일 javac.exe
javac -d  바이트코드파일 저장위치 소스경로 
javac -d bin src/ch01/sec01/Hello.java
바이트코드파일 
파일이름.class

javac가 하는 명령 -> 컴파일 

클래스 파일 실행하기 
java -cp : 바이트코드파일위치 패키지클래스명
java -cp bin ch01.sec01.Hello

자바는 이클립스에서 작성
이클립스 : 무료로 사용할 수 있는 통합개발환경
프로젝트 생성, 자동 코드 완성, 디버깅 개발에 필요한 여러가지 기능을 통합적으로 제공하는 툴 


이클립스로 
1. 자바 프로젝트 생성 thisisjava
2. 패키지 생성 day01 (src 안에 생성)
3. 클래스 생성 Exam01

컨트롤 + space 자동완성
컨트롤 + alt 방향키 한줄복사
컨트롤 + f11 실행
컨트롤 + s 저장
컨트롤 + d 한줄 삭제 
컨트롤 + i 들여쓰기 자동 수정

바이트코드 파일  : 자바 소스파일을 javac  명령어로 컴파일한 파일 

JVM : 자바가상기계
-> 바이트코드 파일을 운영체제를 위한 완전한 기계어로 번역하고 실행하는 역할 

클래스 선언 : 자바소스 파일은 클래스 선언부와 클래스 블럭으로 구성 

실행문 : 변수선언, 값 저장, 메소드 호출에 해당하는 코드 
-> 실행문 끝에는 세미콜론(;)을 붙임 

자바 개발순서 
1) 소스파일을 작성 (.java)
2) javac 명령어로 컴파일 실행 
3) java 명령어로 실행 
4) 결과 확인 

변수 : 값을 저장할 수 있는 메모리의 특정 번지에 붙이는 이름 
메모리에 값을 저장할 수 있도록 함 

1. 변수 선언 
데이터타입, 변수이름 지정
ex> int num1;
num1 = 10;
num1 = 20;
num1 = "Aa" -> 에러 (문자)
num1 = 1.0 -> 에러 (실수)
(int는 정수)
(변수에 담기는 값 : 할당)

2. 할당 = 대입연산자
ex> num1 = 10; 

자바에서 제공하는 기본 타입 
(타입 별로 담길 수 있는 값의 종류와 허용범위가 다름) 

1. 정수형
byte 1byte
short 2byte 
char 2byte 
int 4byte 
long 8byte 

2. 실수형
float 4byte 
double 8byte 

3. 논리형
boolean 1byte 

자바 주석은 // 사용
변수에 값을 담아주는 것 : 변수 초기화

변수 명명 규칙 
1. 첫 번째 글자는 문자이거나 '$','_' 이어야하고 숫자로 시작할 수 없음 
2. 영어 대소문자 구분 가능 
int A int a 
3. 첫 번째 문자의 첫 문자는 소문자로 시작하고 
다른 단어가 붙을 경우에는 첫 문자를 대문자로 시작 (관례)
userName
userPassword
4. 문자 수의 제한 없음 
5. 자바 예약어는 사용할 수 없음 
예약어 : 자바 언어에서 의미를 지니고 사용되는 단어 


리터럴 
10진수 0~9
123

2진수 0~1
1011

8진수 0~7
234

16진수 0~15
#ffffff
10 --> a
11 --> b 
12 --> c
13 --> d
14 --> e
15 --> f

이스케이프 문자(escape)
- 역슬러시와 함께 사용 
1) \t 탭만큼 뛰움
2) \n 줄바꿈
3) \" "출력
4) \' ' 출력
String str2 = "나는 \"김그린\" 입니다."

변수의 종류 
1. 클래스변수 
선언 위치 : 클래스 영역 Method 영역
2. 인스턴스변수
선언 위치 : 클래스 영역 Heap 영역 
3. 지역변수
선언 위치 : 블럭 내부 Heap 영역 

타입변환 
1. 자동타입변환 프로모션 
2. 강제타입변환 프로모션 
- (타입) 캐스팅 연산자 
3. 문자열을 기본타입으로 변환 
** int num = Integer.parselnt("3000");
byte num2 = Byte.parseByte("20");
double num3 = Double.parseDouble("1.1234");
boolean var1 = Boolean.parseBoolean("true");
4. 기본타입을 문자열로 변경 
1) String.valueOf(20)
2) num2 + ""

연습문제 
double var1 = 3.5;
double var2 = 2.7;

덧셈 후 소수점 이하는 버리려면?
int result = (int) (var1 + var2) ; 
System.out.println(result);

변수와 시스템 입출력 
변수에 저장된 값을 모니터에 출력하기 
키보드입력값을 변수에 저장하기 
시스템 표준 출력장치 : 모니터
시스템 표준 입력장치 : 키보드

System.out.println("내용")
: 모니터에 내용을 출력하기 
println() 괄호 안의 내용 출력하고 줄바꿈해줌
String str = "김그린"
ex> println("내 이름은" + str + "입니다.")

printf() 괄호 안의 문자를 형식 문자열 대로 내용을 출력함
printf("형식문자열", 값1, 값2)
String str = "김그린"
ex> printf("내이름은 %s 입니다", str)

print() 괄호 안의 내용을 출력함

printf("내 이름은 %3$s이고 나이는 %2$d이다.", "자바", 30, "그린") : 3$ - 이름에 3번째 값이 들어감 
%[순번$] [flags] [width] [.presision] --> 생략 가능, 
conversion (%s - 문자열, %d - 정수) ---> 생략 불가능

flags : -,생략,0
-> 플래그 생략하면 왼쪽 빈자리 공백
-> -는 오른쪽 빈자리 공백
-> 0은 왼쪽 빈자리를 0으로 채움 (정수,실수형일 때만 가능, 문자열은 불가능)  

%d 정수
%10d 자릿수 지정 -> 공백 생김 
%s 문자열 
%f 실수
profile
신입 개발자의 배웠던 것을 복습하기 위한 블로그입니다.

0개의 댓글