자바 Java
3. Java 기본 문법과 자료형
안녕하세요! 태마입니다.
Java 기초 강좌입니다.
강좌의 경우
1. 주제 간단 정리
2. 상세 주제 정리
으로 이루어져 있습니다.
자바 Java
포스팅 시작하겠습니다 :)
1. 주제 간단 정리
1. Java에서 기본 문법이 중요한 이유
Java는 정적 타입 언어이므로 변수 선언 시 자료형을 반드시 명시해야 합니다.
또한, Java는 객체지향 프로그래밍(OOP) 을 기반으로 하므로 클래스와 메서드 개념도 중요합니다.
📌 이 장에서 배울 핵심 개념
✔ Java 프로그램의 기본 구조 (main() 메서드)
✔ 변수와 자료형 (기본형, 참조형)
✔ 연산자와 제어문 (조건문, 반복문)
2. Java의 기본 프로그램 구조
Java 프로그램의 가장 기본적인 형태는 다음과 같습니다.
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, Java!");
}
}
✔ public class HelloWorld → HelloWorld라는 클래스 선언
✔ public static void main(String[] args) → Java 프로그램의 시작점
✔ System.out.println("Hello, Java!"); → 콘솔에 출력
📌 Java는 반드시 클래스 안에서 코드가 작성되며, main() 메서드가 프로그램의 진입점 역할을 함!
3. Java의 자료형 (Data Types) – 변수 선언과 활용
Java에는 기본형(Primitive Type)과 참조형(Reference Type) 이 있습니다.
✅ (1) 기본형(Primitive Type) – 값 자체를 저장하는 타입
✔ Java는 8개의 기본형을 제공합니다.
✔ 기본형은 Stack 메모리에 저장되며, 값 자체를 저장합니다.
자료형크기설명예제
byte | 1바이트 | 작은 정수 | byte b = 10; |
short | 2바이트 | 작은 정수 | short s = 1000; |
int | 4바이트 | 기본 정수형 | int num = 100; |
long | 8바이트 | 큰 정수형 | long big = 100000L; |
float | 4바이트 | 소수점 지원 (정확도 낮음) | float pi = 3.14f; |
double | 8바이트 | 소수점 지원 (정확도 높음) | double d = 3.1415; |
char | 2바이트 | 문자 하나 저장 | char c = 'A'; |
boolean | 1바이트 | 참 또는 거짓 | boolean isJavaFun = true; |
public class DataTypeExample {
public static void main(String[] args) {
int age = 25;
double height = 175.5;
char grade = 'A';
boolean isAdult = true;
System.out.println("나이: " + age);
System.out.println("키: " + height);
System.out.println("등급: " + grade);
System.out.println("성인 여부: " + isAdult);
}
}
📌 기본형은 값 자체를 저장하며, 연산 속도가 빠름!
✅ (2) 참조형(Reference Type) – 객체의 주소를 저장하는 타입
✔ 기본형 외의 모든 데이터는 참조형(Reference Type) 입니다.
✔ 참조형은 Heap 메모리에 객체를 저장하고, Stack에는 그 주소를 저장합니다.
String name = "Java";
int[] numbers = {1, 2, 3};
📌 참조형은 실제 데이터를 가리키는 "주소 값"을 저장함!
2. 상세 주제 정리
1. 연산자 (Operators) – 데이터를 다루는 방법
연산자는 변수의 값을 조작하는 데 사용됩니다.
✅ 산술 연산자
산술 연산자는 두 값을 연산하여 수학적인 결과를 반환합니다. 주로 숫자에 대해 사용됩니다.
연산자설명예제
+ | 덧셈 | a + b |
- | 뺄셈 | a - b |
* | 곱셈 | a * b |
/ | 나눗셈 | a / b |
% | 나머지 | a % b |
public class ArithmeticExample {
public static void main(String[] args) {
int a = 10, b = 5;
System.out.println("덧셈: " + (a + b)); // 15
System.out.println("나눗셈: " + (a / b)); // 2
System.out.println("나머지: " + (a % b)); // 0
}
}
📌 산술 연산자는 수학적인 계산 외에도 프로그래밍에서 값의 변경과 비교에 활용됩니다.
✅ 비교 연산자
비교 연산자는 두 값이 같은지, 크거나 작은지를 비교하는 데 사용됩니다.
연산자설명예제
== | 같다 | a == b |
!= | 같지 않다 | a != b |
> | 크다 | a > b |
< | 작다 | a < b |
>= | 크거나 같다 | a >= b |
<= | 작거나 같다 | a <= b |
public class ComparisonExample {
public static void main(String[] args) {
int a = 10, b = 5;
System.out.println("a == b: " + (a == b)); // false
System.out.println("a > b: " + (a > b)); // true
}
}
📌 비교 연산자는 조건문과 함께 많이 사용되며, 값의 범위를 확인하는 데 유용합니다.
✅ 논리 연산자
논리 연산자는 조건을 결합하거나 반전시킬 때 사용됩니다.
연산자설명예제
&& | AND 연산자 | (a > 0 && b < 5) |
` | ` | |
! | NOT 연산자 | !(a > b) |
public class LogicalExample {
public static void main(String[] args) {
int a = 10, b = 5;
System.out.println("AND 연산: " + (a > 0 && b < 10)); // true
System.out.println("OR 연산: " + (a > 0 || b > 10)); // true
System.out.println("NOT 연산: " + !(a > b)); // false
}
}
📌 논리 연산자는 여러 조건을 결합할 때 유용하며, 복잡한 조건식을 처리할 때 사용됩니다.
2. 제어문 (조건문 & 반복문) – 프로그램 흐름 제어
제어문은 프로그램의 흐름을 제어하는 데 사용됩니다.
✅ (1) if-else 조건문
if 조건문은 조건이 참일 때만 실행되는 코드 블록을 설정합니다.
int score = 85;
if (score >= 90) {
System.out.println("A 학점");
} else if (score >= 80) {
System.out.println("B 학점");
} else {
System.out.println("C 학점");
}
📌 조건문을 사용하면 프로그램이 특정 조건에 맞춰 다르게 실행될 수 있습니다.
✅ (2) switch 조건문
switch 조건문은 여러 가지 조건을 비교하고 실행할 구문을 선택하는 데 유용합니다.
int day = 3;
switch (day) {
case 1:
System.out.println("월요일");
break;
case 2:
System.out.println("화요일");
break;
case 3:
System.out.println("수요일");
break;
default:
System.out.println("주말");
break;
}
📌 switch는 주로 여러 값에 대해 특정 코드를 실행할 때 유용합니다.
✅ 반복문 (for, while, do-while)
반복문은 특정 조건을 만족할 때까지 같은 동작을 반복할 때 사용됩니다.
(1) for 반복문
for (int i = 1; i <= 5; i++) {
System.out.println("반복 횟수: " + i);
}
(2) while 반복문
int i = 1;
while (i <= 5) {
System.out.println("반복 횟수: " + i);
i++;
}
📌 반복문은 일정 조건에 맞춰 반복되는 작업을 처리할 때 유용하며, 데이터 처리에서 자주 사용됩니다.
3. 배열과 고차원 배열 (Array & Multi-dimensional Arrays)
배열은 같은 타입의 데이터를 여러 개 저장하는 자료형입니다.
✅ 1차원 배열 예제
int[] numbers = {1, 2, 3, 4, 5};
System.out.println(numbers[0]); // 1 출력
✅ 2차원 배열 예제
int[][] matrix = {{1, 2, 3}, {4, 5, 6}};
System.out.println(matrix[1][2]); // 6 출력
📌 배열은 고정된 크기의 데이터를 처리할 때 유용하고, 다차원 배열을 통해 더 복잡한 데이터를 다룰 수 있습니다.
✅ 지금까지 Java 기본 문법과 자료형 개념을 완벽하게 정리했어요!
👉 "이제 메서드, 생성자, 접근제어자를 더 깊이 배우고 싶다면?"
✅ 다음 회차에서 Java의 메서드 개념을 배우러 갑시다!
'IT Developer > Java' 카테고리의 다른 글
Java 기초 <9. 멀티스레딩과 동시성 프로그래밍> (1) | 2025.03.10 |
---|---|
Java 기초 <8. 예외 처리와 사용자 정의 예외> (0) | 2025.03.09 |
Java 기초 <7. 컬렉션 프레임워크 (List, Set, Map) 활용 및 성능 비교> (2) | 2025.03.08 |
Java 기초 <6. 인터페이스와 추상 클래스의 차이> (0) | 2025.03.07 |
Java 기초 <5. 객체지향 4대 원칙 (캡슐화, 상속, 다형성, 추상화)> (0) | 2025.03.06 |
Java 기초 <4. 메서드, 생성자, 접근제어자 정리> (1) | 2025.03.05 |
Java 기초 <2. JDK, JRE, JVM 차이 및 Java 개발 환경 구축> (0) | 2025.03.03 |
Java 기초 <1. Java 소개 및 특징> (4) | 2025.03.02 |