JDK는 JRE를 포함하고 있다. Java 프로그램을 실행만 한다면 JRE만 설치하면 되지만,
Java 프로그래밍을 한다면 JDK를 설치해야 함
JDK(Java Development Kit)
JRE(Java Runtime Environment)
리터럴 : 변하지 않는 데이터 그 자체
변수 : 데이터를 저장하기 위해 할당 받은 메모리 공간을 의미
사용 목적
자료형
// 기본 자료형
/* 정수를 취급하는 자료형 */
byte bnum; // 1byte
short snum; // 2byte
int inum; // 4byte
long lnum; // 8byte
/* 실수를 취급하는 자료형 */
float fnum; // 4byte
double dnum; // 8byte
/* 문자를 취급하는 자료형 */
char ch; // 2byte
/* 논리값을 취급하는 자료형 */
boolean isTrue; // 1byte
/* 설명. 문자열은 참조 자료형이다. (Feat. 대문자로 시작) */
String str; // 4byte -> 모든 참조 자료형은 4byte
상수
/* 상수 선언 시 자료형 앞에 final 키워드를 붙인다. */
final int AGE;
public class OverflowExample {
public static void main(String[] args) {
byte x = 127; // 8비트 정수 최대값
x = (byte) (x + 1); // 오버플로우 발생
System.out.println(x); // 출력: -128
}
}
public class UnderflowExample {
public static void main(String[] args) {
byte x = -128; // 8비트 정수 최소값
x = (byte) (x - 1); // 언더플로우 발생
System.out.println(x); // 출력: 127
}
}
연산 : 데이터를 처리하여 결과를 만드는 것
연산자 : 연산 과정에서 사용되는 기호 또는 부호
연산자 종류
종류 | 연산자 | 설명 |
---|---|---|
산술 연산자 | +, -, *, /, % | 사칙연산 포함 기타 연산자 |
대입 연산자 | =, +=, -=, *=, /=, %= | = 오른쪽에 있는 값을 왼쪽에 대입하는 연산자 |
증감 연산자 | ++, -- | 피연산자를 하나만 갖는 단항 연산자 |
비교 연산자 | >, <, >=, <=, ==, != | 두 피연산자의 상대적인 크기를 비교하는 연산자 |
논리 연산자 | &&, | |
삼항 연산자 | ? : | 피연산자 항목이 3개인 연산자 |
비트 연산자 | &, | , ^, ~, <<, >>, >>> |
연산자 우선순위/결합규칙
💡 단항 연산자는 연산에 필요한 피연산자의 갯수가 하나다.
예) ++x, x++, --x, x++
이항 연산자는 연산에 필요한 피연산자이며 대부분의 연산자가 이항연산자이다.
예) a + b, a += b, a == b
삼항 연산자는 연산에 필요한 피연산자의 갯수가 세 개이다.
예) x ? a : b