1. JVM(자바 가상 머신)
- 여러 운영체제에서 동일한 실행 결과가 나오도록 설계
소스코드 -> 컴파일러 -> Byte code -> 실행 // source(코드), out(결과)
//sout; 출력메소드
//메인메소드 : 시작하는 시작점 프로그램에서 메인 메소든는 1개만 존재
// 별도의 프로그램이라고 생각하면 메인 메소드도 여러개 존재할 수 있다.
2. 자바의 소스코드
- 파일명과 class명은 동일해야 함
- 대소문자가 명확히 구별해야 함
- 문장의 끝은 ;(세미콜론)을 붙여야 함
3. 문장의 출력
- System.out.println() : 한 줄에 값을 출력한 후, \n을 붙이지 않아도 알아서 줄 바꿈이 됨

4. 주석문
- // : // 부터 라인 끝까지 주석으로 처리
- /* 내용 */ : /*와 */ 사이에 있는 모든 범위를 주석으로 처리
- /** */ : 자바클래스나 인터페이스, 생성자, 메서드등을 설명할 때 사용
//cpu : 컴퓨터의 뇌 , 그래픽카드, RAM : 메모리, 임시 기억장치(휘발성)
5. 변수(Variable)
- 하나의 값을 저장할 수 있는 메모리 공간
- 변수를 선언하는 방법
데이터타입 변수이름;
int a;
- 데이터 타입(기본) -> stack에 들어간다.
정수 : byte(1Byte,8Bit, -128 ~ 127), short(2Byte, -32768 ~ 32767)
, int(4Byte, 약 -21억 ~ 21억), long(8Byte) -> 은행프로그램과 같이 많으 수를 사용하는 경우 사용
실수 : float(4Byte, 소숫점 6자리까지라고 생각), double(8Byte) -> double이 더 많이 사용

문자 : char(2Byte)

논리 : boolean(1Byte -> true, false) -> Java에서는 참(1) 거짓(0)을 판단하는 논리형 예약어(키워드)이다.

// String : String은 자료 타입이 아닌 개발자가 선언한 Class이다.
// 5가지 영역 : Method, Heap, Stack, pc register , Native Method Stack
- 변수 이름 작성 방법
1. 첫 글자는 문자 또는 "$", "_"를 사용해야 한다.
apple. $apple, _apple
2. 첫 글자를 숫자로 시작할 수 없음
1apple(x) -> 정수로 인식하기 때문이다. 왼쪽에서 오른쪽으로 읽는데 기계가 숫자를 인식하여 정수로 판단
3. 대소문자를 구별
apple 변수와 Apple는 서로 다르다.
4. 문자수의 길이 제한은 없다.
abcdefghij~~ = 10;
5. 예약어는 사용할 수 없음
true, false, if, while, for...
6. 첫 글자는 소문자로 시작, 다른 단어가 붙을 경우 첫 글자는 대문자로 함(권장)
myscore(비권장) -> myScore(권장) / 다른 개발자가 변수를 더 쉽게알기 위해 (약속)
- 변수의 초기화
int a;
a= 10;//변수에 처음 값을 넣는것을 초기화라고 한다.
- 변수의 선언 및 초기화
데이터타입 변수이름 = 값;
int a = 10;
- 변수의 재대입
변수이름 = 값;
int a = 10;
system.out.println(a) // 10 -> a는 메모리 주소이다.
a = 5; -> 우측에 있는 5 를 a에 대입한다, 같다고 생각하지 말자
// ctrl alt l - 줄 정렬
// file -> refector -> rename
// Ctrl + Shift + F12 : 편집기(Editor) 영역을 최대로 크기로 토글
// Ctrl + Shift + U : 대/소문자 변경
6. 연산자(Operator)
- 프로그램에서 데이터를 처리하여 결과를 산출
- 연산에 사용되는 표시나 기호
- 산술 연산자
(+,-,*,/,%)
- 비교 연산자(결과는 boolean)
(<,>,<=,>=,==,!=) -> = 은 항상 오른쪽, = 대입 , == 같다

- 증감 연산자
변수의 값을 1증가 시키거나 1감소 시키는 연산자
++변수 : 다른 연산을 수행하기 전에 값을 1증가시킴(--)
변수++ : 다른 연산을 먼저 수행한 후 값을 1증가시킴(--)

int a = 1;
++a// a = 2
int a = 1;
a++// a = 2
int x = 1;
int result = ++x; // result ,x =2
int x = 1;
int result = x++; // result = 1 ,x =2
- 대입 연산자
값을 변수에 저장해주는 연산자
=, +=, -=, *=, /=, %=
int num = 10;
num += 1; -> num = num + 1; -> 10 + 1 = 11 = num
- 논리 연산자
&&(AND)모두 1이어야한다, ||(OR)하나라도 1, ^(헷-XOR)서로 달라야한다., !
AND 연산
boolean && boolean
A && B R
1 1 1
0 1 0
1 0 0
0 0 0
OR 연산
예) 주민등록번호 성별 -> 1또는 3또는 5또는 7또는 9는 남자
boolean || boolean
A || B R
1 1 1
1 0 1
0 1 1
0 0 0
XOR 연산
boolean ^ boolean
A ^ B R
1 1 0
1 0 1
0 1 1
0 0 0

! 연산
!boolean -> !1 -> 0
- 비트 연산자
&, |, ^, <<, >>
// 비트 우선순위 (<<) -> (>>) -> (&) -> (^) -> (|)
28 << 2
1 1 1 0 0
1 1 1 0 0 0 0
64 32 16 8 4 2 1 -> 112
28 >> 2
1 1 1 0 0
1 1 1
4 2 1 -> 7
- 삼항 연산자
3개의 피연산자를 필요로하는 연산자이며, 앞의 조건식에 따라 :(콜론) 앞뒤의 연산자가 선택
조건식 ? 값1 : 값2
(결과 boolean)
emo = 10 > 5 ? 😊 : ❤; -> 결과 😊

// window + . (동시에) 이모티콘
// ctrl + alt + insert
과제.
성적 프로그램
1. 3과목 이상의 변수를 만들어 값을 저장
kor = 80 ~~~~
2. 위 점수를 변수에 저장하고 총점과 평균, 합격 여부를 구함
(단, 합격 여부는 평균을 기준으로 60점 이상은 합격, 60점 미만은 불합격으로 함)
3. 합격 여부는 삼항 연산자를 활용

'Java > Java' 카테고리의 다른 글
국비지원 자바 복습 6 (메소드, 메인메소드, opp, 클래스) (0) | 2022.10.04 |
---|---|
국비지원 자바 복습 5 (2차원 배열, String 클래스, 주민등록 검증) (1) | 2022.10.04 |
국비지원 자바 복습 4 (반복 문, 배열) (1) | 2022.10.04 |
국비지원 자바 3(타입변환, 제어 문, 성적프로그램) (1) | 2022.10.04 |
Java 국비지원 OT (1) | 2022.10.02 |