Java์์ ๋ณ์๋ ํ๋ก๊ทธ๋จ์ด ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์กฐ์ํ๋ ํต์ฌ ์์์ ๋๋ค. Java ๋ณ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ ์ ์ฅํ์ฌ ํ์ํ ๋ ๋ถ๋ฌ์ ์ฌ์ฉํ๋ ์ญํ ์ ํ๋ฉฐ, ๋ฐ์ดํฐ ํ์ ๊ณผ ๋ณ์์ ์ข ๋ฅ์ ๋ฐ๋ผ ๋ค์ํ ๋ฐฉ์์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฒ ๊ธ์์๋ Java์์ ๋ณ์๋ฅผ ์ ์ธํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ, ๊ทธ๋ฆฌ๊ณ ๊ฐ ๋ณ์์ ์ข ๋ฅ์ ํน์ง์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
Java์์ ๋ณ์๋?
Java ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋นํ๋ ๊ฒ์ผ๋ก, ๊ฐ์ ์ฌ์ฌ์ฉํ๊ฑฐ๋ ๋ค๋ฅธ ๊ฐ์ผ๋ก ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๋ณ์๋ ๋ฐ์ดํฐ ํ์ ๊ณผ ๋ณ์ ์ด๋ฆ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๋ณ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ฉด ๋ณ์ ์ด๋ฆ์ ํตํด ํด๋น ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฒ ๋ถ๋ฌ์ฌ ์ ์์ต๋๋ค.
๋ณ์ ์ ์ธ ๊ธฐ๋ณธ ๊ตฌ์กฐ
๋ฐ์ดํฐํ์
๋ณ์์ด๋ฆ = ๊ฐ;
๋ณ์ ์ ์ธ ์ ๋ฐ์ดํฐ ํ์ ์ ๋ณ์์ ์ ์ฅํ ์ ์๋ ๋ฐ์ดํฐ์ ์ข ๋ฅ๋ฅผ ๊ฒฐ์ ํ๋ฉฐ, ๋ณ์ ์ด๋ฆ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฒ ์ฐธ์กฐํ ์ ์๋ ์ด๋ฆ์ ๋๋ค.
์์ ์ฝ๋
public class VariableExample {
public static void main(String[] args) {
int age = 25; // ์ ์ํ ๋ณ์ ์ ์ธ
double salary = 55000.75; // ์ค์ํ ๋ณ์ ์ ์ธ
System.out.println("๋์ด: " + age);
System.out.println("์๊ธ: " + salary);
}
}
์ถ๋ ฅ ๊ฒฐ๊ณผ:
๋์ด: 25
์๊ธ: 55000.75
Java์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์
Java์๋ 8๊ฐ์ง์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ด ์์ต๋๋ค. ์ด๋ฌํ ํ์ ์ ๋ฐ์ดํฐ์ ํฌ๊ธฐ์ ์ ์ฅํ ์ ์๋ ๊ฐ์ ์ข ๋ฅ๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.
- ์ ์ํ:
byte
(1๋ฐ์ดํธ),short
(2๋ฐ์ดํธ),int
(4๋ฐ์ดํธ),long
(8๋ฐ์ดํธ) - ์ค์ํ:
float
(4๋ฐ์ดํธ),double
(8๋ฐ์ดํธ) - ๋ฌธ์ํ:
char
(2๋ฐ์ดํธ, ์ ๋์ฝ๋ ๋ฌธ์) - ๋
ผ๋ฆฌํ:
boolean
(1๋ฐ์ดํธ,true
๋๋false
๊ฐ๋ง ์ ์ฅ ๊ฐ๋ฅ)
์์ ์ฝ๋
public class DataTypeExample {
public static void main(String[] args) {
int intVar = 100; // ์ ์ํ
double doubleVar = 123.45; // ์ค์ํ
char charVar = 'A'; // ๋ฌธ์ํ
boolean boolVar = true; // ๋
ผ๋ฆฌํ
System.out.println("์ ์ํ: " + intVar);
System.out.println("์ค์ํ: " + doubleVar);
System.out.println("๋ฌธ์ํ: " + charVar);
System.out.println("๋
ผ๋ฆฌํ: " + boolVar);
}
}
์ถ๋ ฅ ๊ฒฐ๊ณผ:
์ ์ํ: 100
์ค์ํ: 123.45
๋ฌธ์ํ: A
๋
ผ๋ฆฌํ: true
Java์์๋ ๋ฐ์ดํฐ ํ์ ์ ๋ฐ๋ผ ๋ณ์ ์ ์ธ ์ ํ์ํ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ๋ค๋ฅด๋ฉฐ, ๊ฐ์ ๋ฒ์๋ ๋ฌ๋ผ์ง๋๋ค.
๋ณ์์ ์ข ๋ฅ
Java์์๋ ๋ณ์์ ์์น์ ์๋ช ์ฃผ๊ธฐ์ ๋ฐ๋ผ ๋ก์ปฌ ๋ณ์, ์ธ์คํด์ค ๋ณ์, ํด๋์ค ๋ณ์๋ก ๋ถ๋ฅ๋ฉ๋๋ค. ๊ฐ ๋ณ์๋ ํ๋ก๊ทธ๋จ์์ ๋ค๋ฅด๊ฒ ๋์ํ๋ฉฐ, ์ฌ์ฉํ๋ ์์น์ ๋ฐฉ์์ด ๋ค๋ฆ ๋๋ค.
1. ๋ก์ปฌ ๋ณ์ (Local Variable)
๋ก์ปฌ ๋ณ์๋ ๋ฉ์๋๋ ๋ธ๋ก ๋ด์์ ์ ์ธ๋๋ฉฐ, ํด๋น ๋ธ๋ก์ด๋ ๋ฉ์๋๊ฐ ์คํ๋ ๋๋ง ์ ํจํฉ๋๋ค. ๋ธ๋ก์ ๋ฒ์ด๋๋ฉด ๋ณ์๋ ์๋ฉธ๋๊ณ , ๋ค๋ฅธ ๋ฉ์๋์์๋ ์ ๊ทผํ ์ ์์ต๋๋ค.
์์ ์ฝ๋
public class LocalVariableExample {
public static void main(String[] args) {
int localVar = 50; // ๋ก์ปฌ ๋ณ์ ์ ์ธ
System.out.println("๋ก์ปฌ ๋ณ์ ๊ฐ: " + localVar);
}
}
๋ก์ปฌ ๋ณ์๋ ์ ์ธ๋ ๋ฉ์๋๋ ๋ธ๋ก์์๋ง ์ฌ์ฉ๋๋ฉฐ, ๋ฉ์๋๊ฐ ๋๋๋ฉด ๋ฉ๋ชจ๋ฆฌ์์ ์ฌ๋ผ์ง๋๋ค.
2. ์ธ์คํด์ค ๋ณ์ (Instance Variable)
์ธ์คํด์ค ๋ณ์๋ ํด๋์ค์ ์ธ์คํด์ค(๊ฐ์ฒด)์ ์ํ๋ฉฐ, ํด๋์ค๊ฐ ์ธ์คํด์คํ๋ ๋๋ง๋ค ๊ฐ๋ณ์ ์ผ๋ก ์์ฑ๋ฉ๋๋ค. ์ธ์คํด์ค ๋ณ์๋ ์ฃผ๋ก class
๋ด๋ถ์ ์ ์ธํ๋ฉฐ, static
ํค์๋๊ฐ ์์ต๋๋ค.
์์ ์ฝ๋
public class InstanceVariableExample {
int instanceVar = 100; // ์ธ์คํด์ค ๋ณ์
public static void main(String[] args) {
InstanceVariableExample obj1 = new InstanceVariableExample();
InstanceVariableExample obj2 = new InstanceVariableExample();
obj1.instanceVar = 200;
System.out.println("obj1์ ์ธ์คํด์ค ๋ณ์: " + obj1.instanceVar);
System.out.println("obj2์ ์ธ์คํด์ค ๋ณ์: " + obj2.instanceVar);
}
}
์ถ๋ ฅ ๊ฒฐ๊ณผ:
obj1์ ์ธ์คํด์ค ๋ณ์: 200
obj2์ ์ธ์คํด์ค ๋ณ์: 100
์ ์ฝ๋์์ obj1
๊ณผ obj2
๋ ๊ฐ๊ฐ ๋
๋ฆฝ์ ์ธ ์ธ์คํด์ค ๋ณ์๋ฅผ ๊ฐ์ง๋๋ค.
3. ํด๋์ค ๋ณ์ (Class Variable)
ํด๋์ค ๋ณ์๋ static
ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ธํ๋ฉฐ, ๋ชจ๋ ์ธ์คํด์ค๊ฐ ๊ณต์ ํฉ๋๋ค. ํด๋์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋๋ ๋ ์ด๊ธฐํ๋๋ฉฐ, ๋ชจ๋ ๊ฐ์ฒด๊ฐ ๋์ผํ ๊ฐ์ ๊ณต์ ํฉ๋๋ค.
์์ ์ฝ๋
public class ClassVariableExample {
static int classVar = 500; // ํด๋์ค ๋ณ์
public static void main(String[] args) {
System.out.println("ํด๋์ค ๋ณ์ ๊ฐ: " + ClassVariableExample.classVar);
ClassVariableExample.classVar = 1000;
System.out.println("๋ณ๊ฒฝ๋ ํด๋์ค ๋ณ์ ๊ฐ: " + ClassVariableExample.classVar);
}
}
์ถ๋ ฅ ๊ฒฐ๊ณผ:
ํด๋์ค ๋ณ์ ๊ฐ: 500
๋ณ๊ฒฝ๋ ํด๋์ค ๋ณ์ ๊ฐ: 1000
ํด๋์ค ๋ณ์๋ ๋ชจ๋ ๊ฐ์ฒด์์ ๋์ผํ ๊ฐ์ ์ฐธ์กฐํ๋ฏ๋ก, ํ ๋ฒ ๋ณ๊ฒฝํ๋ฉด ๋ชจ๋ ๊ฐ์ฒด์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.
Java ๋ณ์ ์ด๊ธฐํ
Java์์ ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ด๊ธฐ๊ฐ์ ์ค์ ํ๋ ๊ฒ์ ๋ณ์ ์ด๊ธฐํ๋ผ๊ณ ํฉ๋๋ค. ์ด๊ธฐํ๊ฐ ๋์ง ์์ ๋ณ์๋ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ์ฌ์ฉ ์ ์ ๋ฐ๋์ ์ด๊ธฐํํด์ผ ํฉ๋๋ค.
์์ ์ฝ๋
public class InitializationExample {
public static void main(String[] args) {
int number = 10; // ๋ณ์ ์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํ
System.out.println("์ด๊ธฐํ๋ ๋ณ์ ๊ฐ: " + number);
}
}
๋ก์ปฌ ๋ณ์๋ ์ฌ์ฉ ์ ์ ๋ฐ๋์ ์ด๊ธฐํํด์ผ ํ๋ฉฐ, ์ธ์คํด์ค ๋ณ์์ ํด๋์ค ๋ณ์๋ ๊ธฐ๋ณธ๊ฐ(์ ์ํ 0, ์ค์ํ 0.0, boolean์ false, char๋ '\u0000')์ผ๋ก ์๋ ์ด๊ธฐํ๋ฉ๋๋ค.
๋ณ์ ์ฌ์ฉ ์ ์ฃผ์ ์ฌํญ
- ์ด๋ฆ ๊ท์น ์ค์: ๋ณ์ ์ด๋ฆ์ ๋ฌธ์, ์ซ์, ๋ฐ์ค(
_
), ๋ฌ๋ฌ ๊ธฐํธ($
)๋ก ๊ตฌ์ฑํ ์ ์์ผ๋ฉฐ, ์ซ์๋ก ์์ํ ์ ์์ต๋๋ค. - ์๋ฏธ ์๋ ์ด๋ฆ ์ฌ์ฉ: ๋ณ์ ์ด๋ฆ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ค๋ช ํ ์ ์๋ ์๋ฏธ ์๋ ์ด๋ฆ์ผ๋ก ์ง์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- ์๋ฃํ์ ๋ง๋ ๊ฐ ์ ์ฅ: ๋ณ์์๋ ์ ์ธํ ๋ฐ์ดํฐ ํ์ ์ ๋ง๋ ๊ฐ๋ง ์ ์ฅํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
Java์์ ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ํต์ฌ ์์์ ๋๋ค. ๋ณ์์ ์ข ๋ฅ์ ๋ฐ๋ผ ์ฌ์ฉ ๋ฐฉ๋ฒ๊ณผ ๋ฉ๋ชจ๋ฆฌ ๊ด์ ์์์ ๋์์ด ๋ค๋ฅด๋ฉฐ, ๋ฐ์ดํฐ ํ์ ์ ๋ฐ๋ผ ๊ฐ์ ๋ฒ์๊ฐ ๊ฒฐ์ ๋ฉ๋๋ค. ๋ณ์ ์ ์ธ๊ณผ ์ด๊ธฐํ๋ฅผ ์ ์ ํ ์ฌ์ฉํ์ฌ ์์ ์ ์ด๊ณ ๊ฐ๋ ์ฑ ๋์ ์ฝ๋๋ฅผ ์์ฑํด ๋ณด์ธ์!
๋๊ธ ์ฐ๊ธฐ