[Java] 기본 개념
Basic concept of Java
1. 기본 구조
- 자바 프로그램은 클래스로 구성되면, 모든 코드는 클래스 안에서 작성된다.
- 자바 프로그램의 진입점은
main
메소드 이다. - 다음은 hello world를 출력하는 코드이다.
1
2
3
4
5
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
2. 변수와 자료형
- 종류
- 정수형 -
int
,long
,short
,byte
- 실수형 -
float
,double
- 문자형 -
char
- 논리형 -
boolean
- 정수형 -
- 선언
1
2
3
4
int number = 10;
double price = 20.11;
char letter = 'A';
boolean isTrue = true;
3. 연산자
- 종류
- 산술 연산자 -
+
,-
,*
,/
,%
- 비교 연산자 -
==
,!=
,>
,<
,>=
,<=
- 논링 연산자 -
&&
,||
,!
- 산술 연산자 -
- 사용법
1
2
int sum = a + b;
boolean isEqual = (a == b);
4. 조건문
- C랑 같다.
1
2
3
4
5
6
7
if (number > 0) {
System.out.println("양수");
} else if (number < 0) {
System.out.println("음수");
} else {
System.out.println("0");
}
5. 반복문
- C랑 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
for (int i = 0; i < 5; ++i) {
System.out.println(i);
}
while (i < 5) {
System.out.println(i);
++i;
}
do {
System.out.println(i);
++i;
} while (i < 5);
6. 배열
- 배열은 동일한 자료형의 여러 값을 저장할 수 있는 자료구조이다.
1
2
int[] numbers = {1, 2, 3, 4, 5};
System.out.println(numbers[0]);
7. 메소드
- 메서드는 특정 작업을 수행하는 코드 블록이다.
1
2
3
4
5
6
7
8
9
10
public class Main {
public static void main(String[] args) {
int result = add(5, 3);
System.out.println(result);
}
public static int add(int a, int b) {
return a + b;
}
}
8. 클래스와 객체
- 자바는 객체 지향 언어로, 클래스는 객체를 생성하기 위한 청사진 같은 것이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Car {
String color;
int speed;
public Car(String color, int speed) {
this.color = color;
this.speed = speed;
}
public void drive() {
System.out.println("Drive!!");
}
}
public class Main {
public static void main(String[] args) {
Car myCar = new Car("Red", 100);
myCar.drive();
}
}
9. 예외 처리
- 예외 처리는 프로그램 실행 중 발생할 수 있는 오류를 처리하는 기능이다.
1
2
3
4
5
6
7
8
9
10
11
12
public class Main {
public static void main(String[] args) {
try {
int[] array = new int[5];
array[10] = 3;
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("Index Out Of Bounds");
} finally {
System.out.println("Always Executed block");
}
}
}
This post is licensed under CC BY 4.0 by the author.