
๐ฅ๏ธJava ํ๋ก๊ทธ๋๋ฐ: ๋ณ์(Variables) ์ดํดํ๊ธฐ
๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก ์ทจ์
์ ์ค๋นํ๋ฉด์, ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ณธ์ธ ๋ณ์ ๊ฐ๋
์ ํ์คํ๊ฒ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
Java์์ ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ค์ํ ๋๊ตฌ์
๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋ Java ํ๋ก๊ทธ๋๋ฐ์์ ๋ณ์๋ ๋ฌด์์ธ์ง, ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
ใ
1. ๋ณ์๋ ๋ฌด์์ธ๊ฐ?
๋ณ์(Variable)๋ ํ๋ก๊ทธ๋จ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์๋ฏธํฉ๋๋ค.
๋ณ์๋ ๊ฐ์ ์ ์ฅํ๊ณ , ๊ทธ ๊ฐ์ ํ์์ ๋ฐ๋ผ ๋ณ๊ฒฝํ๊ฑฐ๋ ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค.
์ฆ, ๋ฐ์ดํฐ๋ฅผ ๋ด์๋๋ ๊ทธ๋ฆ๊ณผ ๊ฐ์ ์ญํ ์ ํฉ๋๋ค.
- ๋ณ์๋ ๋ค์ํ ์ข
๋ฅ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์์ต๋๋ค.
- ๋ณ์์ ์ ์ฅ๋ ๊ฐ์ ํ์ํ ๋๋ง๋ค ์ ๊ทผํ๊ฑฐ๋ ์์ ํ ์ ์์ต๋๋ค.
Java์์ ๋ณ์ ์ ์ธํ๊ธฐ
Java์์๋ ๋ณ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ฐ๋์ ์ ์ธ(declare)ํด์ผ ํฉ๋๋ค.
๋ณ์๋ฅผ ์ ์ธํ ๋๋ ๋ฐ์ดํฐ์ ํ์
(type)๊ณผ ๋ณ์์ ์ด๋ฆ(name)์ ์ง์ ํฉ๋๋ค.
์์:
int age; // ์ ์ํ ๋ณ์ age ์ ์ธ
|
์์ ์์์์ int๋ ๋ฐ์ดํฐ์ ํ์
(์ ์ํ)์ ์๋ฏธํ๊ณ , age๋ ๋ณ์์ ์ด๋ฆ์
๋๋ค.
2. ๋ณ์์ ํ์
Java๋ ๊ฐํ์
(strictly-typed) ์ธ์ด๋ก, ๋ณ์๋ฅผ ์ ์ธํ ๋ ๋ฐ๋์ ๋ฐ์ดํฐ์ ํ์
์ ์ง์ ํด์ผ ํฉ๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก Java์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ ํ์
์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ ์ํ (int, long, short, byte)
- ์์:
int age = 25; // ์ ์ํ ๋ณ์ age์ ๊ฐ 25๋ฅผ ํ ๋น long distance = 1500000000L; // ๊ธด ์ ์ํ ๋ณ์
|
์ค์ํ (float, double)
- ์ค์ ๋๋ ์์์ ์ด ํฌํจ๋ ์ซ์๋ฅผ ์ ์ฅํฉ๋๋ค.
- ์์:
double pi = 3.14159; // ์ค์ํ ๋ณ์ pi ์ ์ธ float price = 9.99f; // ์์์ ๊ฐ์ ์ ์ฅํ๋ float
|
๋ฌธ์ํ (char)
- ๋จ์ผ ๋ฌธ์๋ฅผ ์ ์ฅํฉ๋๋ค. ์์๋ฐ์ดํ(' ')๋ก ํํ๋ฉ๋๋ค.
- ์์:
char grade = 'A'; // ๋ฌธ์ํ ๋ณ์ grade์ 'A' ์ ์ฅ
|
๋ฌธ์์ดํ (String)
- ๋ฌธ์์ด ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉํฉ๋๋ค. ํฐ๋ฐ์ดํ(" ")๋ก ํํ๋ฉ๋๋ค.
- ์์:
String name = "John"; // ๋ฌธ์์ดํ ๋ณ์ name ์ ์ธ
|
๋
ผ๋ฆฌํ (boolean)
- ์ฐธ(true) ๋๋ ๊ฑฐ์ง(false)์ ์ ์ฅํฉ๋๋ค.
- ์์:
boolean isActive = true; // ๋
ผ๋ฆฌํ ๋ณ์ ์ ์ธ
|
3. ๋ณ์ ์ฌ์ฉํ๊ธฐ
๋ณ์๋ฅผ ์ ์ธํ ํ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ(์ด๊ธฐํ)ํ๊ณ , ๊ทธ ๊ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Java์์๋ ๋ณ์์ ๊ฐ์ ํ ๋นํ ๋ ๋์
์ฐ์ฐ์(=)๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋ณ์ ์ ์ธ๊ณผ ์ด๊ธฐํ
int age = 30; // ๋ณ์ ์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํ
|
๋ณ์ ๊ฐ ๋ณ๊ฒฝ
ํ ๋ฒ ์ ์ธํ ๋ณ์์ ๊ฐ์ ์ธ์ ๋ ์ง ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
age = 35; // ๋ณ์ age์ ์๋ก์ด ๊ฐ 35 ํ ๋น
|
์ด์ฒ๋ผ ๋ณ์๋ ์ฝ๋์ ๋ค์ํ ๋ถ๋ถ์์ ์ฌ์ฉ๋๋ฉฐ, ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
4. ๋ณ์์ ์ฌ์ฉ ์์
๋ค์์ ๋ณ์ ์ฌ์ฉ์ ๊ฐ๋จํ ์์์
๋๋ค. ์ฌ์ฉ์์ ์ด๋ฆ๊ณผ ๋์ด๋ฅผ ์ ์ฅํ๊ณ , ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์
๋๋ค.
public class Main { public static void main(String[] args) { // ๋ณ์ ์ ์ธ ๋ฐ ์ด๊ธฐํ String name = "Alice"; int age = 28;
// ๋ณ์ ์ถ๋ ฅ System.out.println("Name: " + name); System.out.println("Age: " + age);
// ๋ณ์ ๊ฐ ๋ณ๊ฒฝ age = 29; System.out.println("Updated Age: " + age); } } |
์ถ๋ ฅ ๊ฒฐ๊ณผ:
Name: Alice Age: 28 Updated Age: 29
|
์ ํ๋ก๊ทธ๋จ์์, ๋ณ์ name๊ณผ age๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์ถ๋ ฅํฉ๋๋ค.
์ดํ age์ ๊ฐ์ ๋ณ๊ฒฝํ์ฌ ์
๋ฐ์ดํธ๋ ๊ฐ์ ์ถ๋ ฅํ ์ ์์ต๋๋ค.
5. ๋ณ์์ ์ ํจ ๋ฒ์ (Scope)
๋ณ์๋ ์ ์ธ๋ ์์น์ ๋ฐ๋ผ ์ฌ์ฉํ ์ ์๋ ๋ฒ์๊ฐ ๊ฒฐ์ ๋ฉ๋๋ค.
Java์์ ๋ณ์์ ์ ํจ ๋ฒ์๋ ํฌ๊ฒ ๋ ๊ฐ์ง๋ก ๋๋ฉ๋๋ค:
์ง์ญ ๋ณ์(Local Variable):
- ๋ฉ์๋๋ ๋ธ๋ก ์์์ ์ ์ธ๋ ๋ณ์๋ก, ํด๋น ๋ฉ์๋๋ ๋ธ๋ก ์์์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ์์:
public voidexampleMethod( ) { int localVariable = 10; // ์ง์ญ ๋ณ์ }
|
์ธ์คํด์ค ๋ณ์(Instance Variable):
- ํด๋์ค ๋ด๋ถ์์ ์ ์ธ๋ ๋ณ์๋ก, ํด๋์ค์ ์ธ์คํด์ค๊ฐ ์์ฑ๋ ๋๋ง๋ค ํ ๋น๋ฉ๋๋ค.
- ์์:
public classExample { int instanceVariable = 20; // ์ธ์คํด์ค ๋ณ์ }
|
๋ณ์์ ์ ํจ ๋ฒ์๋ฅผ ์ดํดํ๋ฉด ํ๋ก๊ทธ๋จ์ ๋ณด๋ค ๊ตฌ์กฐ์ ์ผ๋ก ์์ฑํ ์ ์์ต๋๋ค.
Java์์ ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ํ์์ ์ธ ์์์
๋๋ค.
๋ณ์๋ฅผ ์ ์ธํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ฟ๋ง ์๋๋ผ, ๋ณ์์ ํ์
, ๊ฐ ๋ณ๊ฒฝ, ๊ทธ๋ฆฌ๊ณ ์ ํจ ๋ฒ์์ ๋ํด ์ดํดํ๋ ๊ฒ์ด Java ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ์ด๋ฅผ ๋ค์ง๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค.
์ด ๋ธ๋ก๊ทธ ํฌ์คํ
์ ํตํด ๋ณ์์ ๊ฐ๋
์ ๋ช
ํํ ์ดํดํ๊ณ , ์ค์ต์ ํตํด ๋ค์ํ ๋ณ์ ์ฌ์ฉ๋ฒ์ ์ตํ๋ฉฐ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก์์ ๋ฅ๋ ฅ์ ํค์ฐ๊ธธ ๋ฐ๋๋๋ค!

๐ฅ๏ธJava ํ๋ก๊ทธ๋๋ฐ: ๋ณ์(Variables) ์ดํดํ๊ธฐ
๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก ์ทจ์ ์ ์ค๋นํ๋ฉด์, ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ณธ์ธ ๋ณ์ ๊ฐ๋ ์ ํ์คํ๊ฒ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
Java์์ ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ค์ํ ๋๊ตฌ์ ๋๋ค.
์ด๋ฒ ํฌ์คํ ์์๋ Java ํ๋ก๊ทธ๋๋ฐ์์ ๋ณ์๋ ๋ฌด์์ธ์ง, ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
ใ
1. ๋ณ์๋ ๋ฌด์์ธ๊ฐ?
๋ณ์(Variable)๋ ํ๋ก๊ทธ๋จ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์๋ฏธํฉ๋๋ค.
๋ณ์๋ ๊ฐ์ ์ ์ฅํ๊ณ , ๊ทธ ๊ฐ์ ํ์์ ๋ฐ๋ผ ๋ณ๊ฒฝํ๊ฑฐ๋ ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค.
์ฆ, ๋ฐ์ดํฐ๋ฅผ ๋ด์๋๋ ๊ทธ๋ฆ๊ณผ ๊ฐ์ ์ญํ ์ ํฉ๋๋ค.
Java์์ ๋ณ์ ์ ์ธํ๊ธฐ
Java์์๋ ๋ณ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ฐ๋์ ์ ์ธ(declare)ํด์ผ ํฉ๋๋ค.
๋ณ์๋ฅผ ์ ์ธํ ๋๋ ๋ฐ์ดํฐ์ ํ์ (type)๊ณผ ๋ณ์์ ์ด๋ฆ(name)์ ์ง์ ํฉ๋๋ค.
์์:
์์ ์์์์ int๋ ๋ฐ์ดํฐ์ ํ์ (์ ์ํ)์ ์๋ฏธํ๊ณ , age๋ ๋ณ์์ ์ด๋ฆ์ ๋๋ค.
2. ๋ณ์์ ํ์
Java๋ ๊ฐํ์ (strictly-typed) ์ธ์ด๋ก, ๋ณ์๋ฅผ ์ ์ธํ ๋ ๋ฐ๋์ ๋ฐ์ดํฐ์ ํ์ ์ ์ง์ ํด์ผ ํฉ๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก Java์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ ํ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ ์ํ (int, long, short, byte)
int age = 25; // ์ ์ํ ๋ณ์ age์ ๊ฐ 25๋ฅผ ํ ๋น
long distance = 1500000000L; // ๊ธด ์ ์ํ ๋ณ์
์ค์ํ (float, double)
double pi = 3.14159; // ์ค์ํ ๋ณ์ pi ์ ์ธ
float price = 9.99f; // ์์์ ๊ฐ์ ์ ์ฅํ๋ float
๋ฌธ์ํ (char)
๋ฌธ์์ดํ (String)
๋ ผ๋ฆฌํ (boolean)
3. ๋ณ์ ์ฌ์ฉํ๊ธฐ
๋ณ์๋ฅผ ์ ์ธํ ํ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ(์ด๊ธฐํ)ํ๊ณ , ๊ทธ ๊ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Java์์๋ ๋ณ์์ ๊ฐ์ ํ ๋นํ ๋ ๋์ ์ฐ์ฐ์(=)๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋ณ์ ์ ์ธ๊ณผ ์ด๊ธฐํ
๋ณ์ ๊ฐ ๋ณ๊ฒฝ
ํ ๋ฒ ์ ์ธํ ๋ณ์์ ๊ฐ์ ์ธ์ ๋ ์ง ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
์ด์ฒ๋ผ ๋ณ์๋ ์ฝ๋์ ๋ค์ํ ๋ถ๋ถ์์ ์ฌ์ฉ๋๋ฉฐ, ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
4. ๋ณ์์ ์ฌ์ฉ ์์
๋ค์์ ๋ณ์ ์ฌ์ฉ์ ๊ฐ๋จํ ์์์ ๋๋ค. ์ฌ์ฉ์์ ์ด๋ฆ๊ณผ ๋์ด๋ฅผ ์ ์ฅํ๊ณ , ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ๋๋ค.
์ถ๋ ฅ ๊ฒฐ๊ณผ:
Age: 28
Updated Age: 29
์ ํ๋ก๊ทธ๋จ์์, ๋ณ์ name๊ณผ age๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์ถ๋ ฅํฉ๋๋ค.
์ดํ age์ ๊ฐ์ ๋ณ๊ฒฝํ์ฌ ์ ๋ฐ์ดํธ๋ ๊ฐ์ ์ถ๋ ฅํ ์ ์์ต๋๋ค.
5. ๋ณ์์ ์ ํจ ๋ฒ์ (Scope)
๋ณ์๋ ์ ์ธ๋ ์์น์ ๋ฐ๋ผ ์ฌ์ฉํ ์ ์๋ ๋ฒ์๊ฐ ๊ฒฐ์ ๋ฉ๋๋ค.
Java์์ ๋ณ์์ ์ ํจ ๋ฒ์๋ ํฌ๊ฒ ๋ ๊ฐ์ง๋ก ๋๋ฉ๋๋ค:
์ง์ญ ๋ณ์(Local Variable):
public voidexampleMethod( ) {
int localVariable = 10; // ์ง์ญ ๋ณ์
}
์ธ์คํด์ค ๋ณ์(Instance Variable):
public classExample {
int instanceVariable = 20; // ์ธ์คํด์ค ๋ณ์
}
๋ณ์์ ์ ํจ ๋ฒ์๋ฅผ ์ดํดํ๋ฉด ํ๋ก๊ทธ๋จ์ ๋ณด๋ค ๊ตฌ์กฐ์ ์ผ๋ก ์์ฑํ ์ ์์ต๋๋ค.
Java์์ ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ํ์์ ์ธ ์์์ ๋๋ค.
๋ณ์๋ฅผ ์ ์ธํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ฟ๋ง ์๋๋ผ, ๋ณ์์ ํ์ , ๊ฐ ๋ณ๊ฒฝ, ๊ทธ๋ฆฌ๊ณ ์ ํจ ๋ฒ์์ ๋ํด ์ดํดํ๋ ๊ฒ์ด Java ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ์ด๋ฅผ ๋ค์ง๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค.
์ด ๋ธ๋ก๊ทธ ํฌ์คํ ์ ํตํด ๋ณ์์ ๊ฐ๋ ์ ๋ช ํํ ์ดํดํ๊ณ , ์ค์ต์ ํตํด ๋ค์ํ ๋ณ์ ์ฌ์ฉ๋ฒ์ ์ตํ๋ฉฐ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก์์ ๋ฅ๋ ฅ์ ํค์ฐ๊ธธ ๋ฐ๋๋๋ค!