Java ์ธ์ด๋ฅผ ์ดํดํ๋ ค๋ฉด ํด๋น ๊ตฌ๋ฌธ์ ์ดํดํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ํต์ฌ์ ์ด๊ณ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์ฑ ์์ ์ค ํ๋๋ ๋ณ์์
๋๋ค.
Java์์ ๋ณ์๋ ๋ฌด์์ ๋๊น?
Java์ ๋ณ์๋ ๋์ค์ ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉํ๊ธฐ ์ํด ์ผ๋ถ ๋ฐ์ดํฐ ๊ฐ์ ์ ์ฅํ ์ ์๋ ์ปจํ ์ด๋์ ๋๋ค. ๋ณธ์ง์ ์ผ๋ก ๋ณ์๋ Java ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ถํ ํ ์ ์๋ ๊ฐ์ฅ ์์ ๋จ์์ ๋๋ค. Java์ ๋ณ์๋ ์์ ๋ฐ์ดํฐ์ฉ(๊ธฐ๋ณธ ๋ณ์)๊ณผ ๋ ๋ณต์กํ๊ณ ๋ฌด๊ฑฐ์ด ๋ณ์(์ฐธ์กฐ ๋ณ์)์ ๋ ๊ฐ์ง ์ ํ์ผ๋ก ์ ๊ณต๋ฉ๋๋ค. ์ค๋์ ๋ณ์๊ฐ ๋ฐ์ดํฐ ๊ฐ ์์ฒด๋ฅผ ์ ์ฅํ๋ ์ฒซ ๋ฒ์งธ ๊ฒฝ์ฐ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ด๋ฌํ ๋ณ์๋ฅผ ๊ธฐ๋ณธ ๋ณ์๋ผ๊ณ ํฉ๋๋ค.Java์์ ๋ณ์ ์ ์ธ
์ด ์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.int x = 9;
์ฐ๋ฆฌ๊ฐ ๋ณด๋ ๊ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค: int
- -2147483648 ~ 2147483647 ๋ฒ์์ ์๋ ์ ์๋ฅผ ์ค๋ช
ํ๋ ๋ณ์ ์ ํ x
- ๋ณ์ ์ด๋ฆ(์๋ก ๊ตฌ๋ณํด์ผ ํฉ๋๋ค. ๊ทธ๋ ์ฃ ?) =
์ผ๋ถ ๋ณ์์ ๋ํ ํ ๋น ๊ธฐํธ, ์ผ๋ถ value 9
- ํด๋น ๊ฐ์ ์ด ๋ช
๋ น์ ๋์
๋๋ค . ์ด์ ๋ชจ๋ ๊ฒ์ ์ข
ํฉํด ๋ณด๊ฒ ์ต๋๋ค. ์ด๋ฆ์ด ์๋ ;
์ ํ์ ๋ณ์์ ๊ฐ์ด ์์ ์ ์ง์ ํฉ๋๋ค . ์ด ์๋ ์ถ์ฝ๋ ํ์์ผ๋ก ๋์ด ์์ผ๋ฉฐ ์ ์ฒด ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. int
x
9
int x;
x = 9;
์ฒซ ๋ฒ์งธ ์ค์์๋ ๋ณ์ ์ ์ธ๊ณผ ์ด๋ฆ ํ ๋น์ ๋ณผ ์ ์์ต๋๋ค. ์ฆ, ์ด๋ฅผ ํตํด JVM์ ๋ณ์์ ๋ํ ๊ณต๊ฐ int
(4๋ฐ์ดํธ)์ ํ ๋นํ๊ณ ์ด๋ฆ์ ์ง์ ํ๋๋ก ์ง์ํฉ๋๋ค x
. ๋ ๋ฒ์งธ์์๋ ๊ฐ์ ์ ๊ณตํฉ๋๋ค 9
. ์ด์ ์๋ ๊ธฐ๋ณธ๊ฐ, ์ฆ 0
. ๋ณ์ ์ด๋ฆ ์ง์ ์ ๊ดํด ๋ช ๋ง๋ ๋ง์๋๋ฆด ๊ฐ์น๊ฐ ์์ต๋๋ค. ์์น์ ์ผ๋ก ๋ฎ์ ๋ํ ์คํ์ผ๋ก ์์ฑ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ฌ๋ ์(๋ช
์)๋ฅผ ์ค๋ช
ํ๋ ๋ณ์๊ฐ ์๋ ๊ฒฝ์ฐ ์ ์ ํ ์ด๋ฆ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
int countOfPeople;
์ด ์ด๋ฆ์์ ์ฒซ ๋ฒ์งธ ๋จ์ด๋ ์๋ฌธ์(์๋ฌธ์)๋ก ์์ํ๊ณ ์ดํ์ ๊ฐ ๋จ์ด๋ ๋๋ฌธ์(๋๋ฌธ์)๋ก ์์๋ฉ๋๋ค. ๋ณ์ ์ด๋ฆ์ ์ผ๋ฐ์ ์ผ๋ก ๋ ๊ฐ ์ด์์ ๋จ์ด๋ก ๊ตฌ์ฑ๋๋ฏ๋ก ์ด๋ฌํ ์ด๋ฆ์ ๋ ์ฝ๊ฒ ์ฝ์ ์ ์๋๋ก ํ๊ธฐ ์ํด ์ํ๋ฉ๋๋ค.
๋ณ์ ์ฌ์ ์
๋ณ์ ์ ์ธ ์์ ๋ก ๋์๊ฐ ๋ณด๊ฒ ์ต๋๋ค.int x = 9;
x
๋ณ์์ ๊ฐ์ ํ ๋ฒ ์
๋ ฅํ๋ค๊ณ ํด์ ํ๋ก๊ทธ๋จ ์คํ ์ค์ ๋ณ์๊ฐ ํญ์ ๊ฐ์ ๊ฐ๊ฒ ๋๋ค๋ ์๋ฏธ๋ ์๋๋๋ค 9
. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๋ค์ ์์ฑํ ์ ์์ต๋๋ค:
x = 4;
๋ชจ๋ ๊ฒ์ด ๊ฑฐ์ ๋์ผํ์ง๋ง ( int
) ์ ํ์ ๋ณ์ ์ ์ธ(์กด์ฌ ์ ์ธ) ์ ๋ฑ๋ก๋๋ฏ๋ก ๋ ์ด์ ์ถ๊ฐํ์ง ์์ต๋๋ค. ๋ค์์ผ๋ก, ์ฌ์ฌ์ฉ๋ง ํ ๊ฒ์
๋๋ค. ์๋ฅผ ๋ค์ด ์ฌ๊ธฐ์๋ ๋ฎ์ด์ฐ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค(๋ณ์์ ์ ๊ฐ์ ์ค์ ํ๊ณ ์ด์ ๊ฐ์ ๋ฎ์ด์๋๋ค). ๋ณ์๋ ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
int y = 7;
๊ทธ๋ฆฌ๊ณ ๋ค์์ ์ค์ ํ๋ฉด x = y;
๋ณ์์ ์ด์ ๊ฐ์ด x
์ญ์ ๋๊ณ ๊ฐ์ ๋ณต์ฌ๋ณธ y
, ์ฆ - ๋ก ๋ฎ์ด์ฐ์ฌ์ง๋๋ค 7
. ํ์ํ ์ซ์๋งํผ ๋ค๋ฅธ ๋ณ์์ ๊ฐ์ ๋๋ฆด ์๋ ์์ต๋๋ค.
x = y + 5;
๋ณ์๊ฐ y
7์ด์์ผ๋ฏ๋ก ๊ฒฐ๊ณผ๋ x
12๊ฐ ๋ฉ๋๋ค. ๋ ํฅ๋ฏธ๋ก์ด ์ ์ ๋ค์ ์์
์ ์ํํ ์ ์๋ค๋ ์ ์
๋๋ค.
x = x + 6;
์ฌ๊ธฐ์ ๋ฌด์์ ๋ณผ ์ ์๋์? ๋ณ์ x
์๋ ๊ณผ๊ฑฐ์ 6๋งํผ ์ฆ๊ฐํ ๊ฐ์ด ์ง์ ๋ฉ๋๋ค. ์ฆ, 12 + 6 = 18์ด ๋ฉ๋๋ค. ๋์ผํ ํญ๋ชฉ์ ๋ค์์ ์๋ตํ์ฌ ๋จ์ถํ ์ ์์ต๋๋ค x
.
x =+ 6;
๋ณ์ ์ ํ
Java์ ์ ํ๋ฆฌ์ผ์ด์ ์ ํด๋์ค์ ๊ฐ์ฒด๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. Java ๋ณ์๊ฐ ๋ฌด์์ธ์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค.- ๊ฐ์ฒด๋ณ์;
- ์ง์ญ๋ณ์;
- ํด๋์ค ๋ณ์.
public class Dog {
public void bark() {
}
}
๊ฐ์ฒด ๋ณ์
๋ณ์๋ ํด๋์ค์์ ์ ์ธ๋์ง๋ง ๋ฉ์๋, ์์ฑ์ ๋๋ ๋ธ๋ก์์๋ ์ ์ธ๋์ง ์์ต๋๋ค.public class Dog {
public int value = 9;
public void bark() {
}
}
์ด ๋ณ์๋ฅผ ํธ์ถํ๋ ค๋ฉด ๋จผ์ ๊ฐ์ฒด๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค.
Dog dog = new Dog();
dog.value;
๋ณ์๋ ๊ฐ์ฒด๊ฐ ์์ฑ๋ ํ์๋ง ์์ฑ๋ฉ๋๋ค. ์ฆ, ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ฒด๋ฅผ ์์ฑํ ํ์๋ง ์์ฑ๋ฉ๋๋ค new
. ๊ฐ์ฒด์์ ๋ด๋ถ ๋ณ์๋ ํญ์ ๋ชจ๋ ๋ฉ์๋, ์์ฑ์ ๋๋ ๋์ผํ ๊ฐ์ฒด ๋ด์ ๋ชจ๋ ํญ๋ชฉ์ ํ์๋ฉ๋๋ค. ์์์ ์ธ๊ธํ๋ฏ์ด ๊ฐ์ฒด ๋ณ์์๋ ๊ธฐ๋ณธ๊ฐ์ด ์์ต๋๋ค. ์ซ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ 0์ด๊ณ , ๋
ผ๋ฆฌ(๋ถ์ธ) - false, ๊ฐ์ฒด์ ๋ํ ์ฐธ์กฐ์ ๊ฒฝ์ฐ - null์
๋๋ค.
์ง์ญ๋ณ์
์ด๋ฌํ ๋ณ์๋ ๋ฉ์๋, ์์ฑ์ ๋๋ ๋ธ๋ก์์ ์ ์ธ๋ฉ๋๋ค.public class Dog {
public void bark() {
int value = 9;
}
}
์ง์ญ ๋ณ์๋ ํธ์ถ๋ ์ฝ๋ ๋ธ๋ก์๋ง ์กด์ฌํ๋ฉฐ ๋ง์ง๋ง์๋ ๋ฉ๋ชจ๋ฆฌ์์ ์ ๊ฑฐ๋ฉ๋๋ค. ์ ์ธ๋ ๋ฉ์๋, ์์ฑ์ ๋๋ ๋ธ๋ก ๋ด์์๋ง ํ์๋ฉ๋๋ค . ์ฆ, ์๋ฅผ ๋ค์ด ๋ค๋ฅธ ๋ฐฉ๋ฒ์์ ๋ณ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ง์ญ ๋ณ์์๋ ์ก์ธ์ค ํ์ ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ฉ์๋์ ๊ฒฝ๊ณ ๋๋จธ์ ๋ณ์๊ฐ ํ์๋์ง ์๋๋ค๋ฉด ๊ทธ๊ฒ๋ค์ ์์ ์ ๋ฌด์์
๋๊น? ์ด ์ ํ์ ๋ณ์๋ ๋ฉ์๋(๋๋ ์์ฑ์ ๋๋ ๋ธ๋ก)๊ฐ ํธ์ถ๋ ๋ ์์ฑ๋๊ณ ์๋ฃ๋๋ฉด ์๋ฉธ๋ฉ๋๋ค.
ํด๋์ค ๋ณ์
์ด๋ฌํ ์ ํ์ ๋ณ์๋ฅผ ์ ์ ๋ณ์๋ผ๊ณ ๋ ํฉ๋๋ค . ์ด๋ ํ์ ์ word ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ธ๋์ง๋งstatic
๋ฉ์๋, ์์ฑ์ ๋๋ ๋ธ๋ก์ ๋ฒ์๋ฅผ ๋ฒ์ด๋ฉ๋๋ค.
public class Dog {
public static int value = 9;
public void bark() {
}
}
๋ณ์๋ฅผ ํธ์ถํฉ๋๋ค:
Dog.value
Dog
๋ณ์๊ฐ ์ฐ๊ฒฐ๋ ํด๋์ค์ ์ด๋ฆ์ ์ด๋์ ์์ต๋๊น? ๊ธฐ๋ณธ๊ฐ์ ๊ฐ์ฒด ๋ณ์์ ๋์ผํฉ๋๋ค. ์ซ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ 0์ด๊ณ ๋ถ์ธ์ ๊ฒฝ์ฐ false์
๋๋ค. ๊ฐ์ฒด ์ฐธ์กฐ์ ๊ฒฝ์ฐ - null์
๋๋ค. ์ ์ ๋ณ์๋ ํด๋์ค์๋ง ์ฐ๊ฒฐ๋๊ธฐ ๋๋ฌธ์ ํด๋์ค์์ ์์ฑ๋ ๊ฐ์ฒด ์์ ๊ด๊ณ์์ด ํญ์ ํ๋์ ์ ์ ๋ณ์๊ฐ ์์ต๋๋ค. ํด๋์ค ๋ณ์๋ ํ๋ก๊ทธ๋จ์ด ์์๋ ๋ ์์ฑ๋๊ณ ํ๋ก๊ทธ๋จ ์คํ์ด ์๋ฃ๋๋ฉด ์๋ฉธ๋ฉ๋๋ค. Java์ ์ ์ ๋ณ์๋ ์์๋ก ์ ์ธ๋ ๋ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋ค์ ๋ํด ๋ ์์ธํ ์ด์ผ๊ธฐํฉ์๋ค.
Java์ ์์๋ ๋ฌด์์ ๋๊น?
์์๋ ๋ณ๊ฒฝ๋์ด์๋ ์ ๋๋ ์ฃผ์ด์ง ๊ณ ์ ๊ฐ์ ๋๋ค. ํ๋ก๊ทธ๋๋ฐ์์ ์์๋ ๋ฌด์์ ๋๊น? ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์คํ์ด ์์๋๊ธฐ ์ ์ ์๋ ค์ง ์ผ๋ถ ์์ ๊ฐ์ด๋ฉฐ ์ฝ๋์์ ํ ๋ฒ ์ค์ ๋ฉ๋๋ค. Java์์ ์์๋ ํน์ ๋จ์ด -๋ก ํ์๋๋ ๋ณ์์ ๋๋คfinal
.
final int VALUE = 54;
์ฌ๊ธฐ์๋ ์์์ ๊ฐ์ผ๋ก ์ค์ ํ ํ์๋ ๋ณ๊ฒฝํ ์ ์๋ ๋ณ์๋ฅผ ์ป์ต๋๋ค. ์์ ์ ์์๊ฐ ๋ณ์๋ณด๋ค ํจ์ฌ ๊ฐ๋จํ๋ค๋ ๊ฒ์
๋๋ค. ํญ์ ๊ณ ์ ํ๊ฒ ์ ์๋๋ฉฐ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. ์กฐ๊ธ ๋ ์์์ ๋ณ์ ๋ช
๋ช
์ ๋ํด ์ด์ผ๊ธฐํ๊ณ , ์์ ๋ช
๋ช
์ ํน์ง์ ์ฃผ์ํด์ผ ํฉ๋๋ค. ์์ ๋ณ์์์ ๋ชจ๋ ๋จ์ด๋ ๋ฐ์ค๋ก ๊ตฌ๋ถ๋ ๋๋ฌธ์๋ก ์์ฑ๋ฉ๋๋ค. _
์๋ฅผ ๋ค์ด ์ด๋ค ํญ๋ชฉ์ ์ต๋๊ฐ์ ์ค๋ช
ํ๋ ์์๊ฐ ํ์ํฉ๋๋ค.
final int MAX_VALUE = 999;
์์ฝํ์๋ฉด, ๋ฐ์ดํฐ(๋๋ ์์น ์ฃผ์)๋ฅผ ์ ์ฅํ๋ ์ฅ์๋ก ๋ณ์๊ฐ ์ ๊ณต๋์ด ์ ํ๋ฆฌ์ผ์ด์
์ ์ ์ดํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ์ ํ์ ๋ณ์๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ ์ ์๋ ํน์ ๋ฐ์ดํฐ ํ์, ํฌ๊ธฐ ๋ฐ ๊ฐ ๋ฒ์๋ฅผ ๊ฐ์ต๋๋ค. ๋ณ์๋ ์์น์ ๋ฐ๋ผ ๊ฐ์ฒด, ๋ก์ปฌ, ํด๋์ค ๋ณ์๋ก ๋๋ ์ ์์ต๋๋ค. ํน๋ณํ ์ ํ์ ๋ณ์, ์ฆ ์ ์ญ ๋ณ์๊ฐ ๋ ์ ์๋ ์์๊ฐ ์์ต๋๋ค. ๊ทธ ๋ฒ์๋ ์ ์ฒด ํ๋ก๊ทธ๋จ์
๋๋ค.
GO TO FULL VERSION