Garbage๋, ์๋ฐ ์์ฉ ํ๋ก๊ทธ๋จ์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๊ฐ์ฒด๋ ๋ฐฐ์ด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ปํ๋ค. ์ฆ, ์์ฉํ๋ก๊ทธ๋จ์ด ๋ ์ด์ ์ ๊ทผํ ์ ์๋ ๊ฐ์ฒด๋ garbage๊ฐ ๋๋ ๊ฒ์ด๋ค.
์์ ์ฝ๋๋ก ์ดํด๋ฅผ ํด๋ณด์.
a = 3;
b = 9;
b = a;
System.out.println(b);
console
3
b๋ ์๋ 9์์ผ๋, b์ a๊ฐ์ ๋ฃ์์ผ๋ก์จ ์ด์ ๋ b๋ ์์ ๊ฐ์ธ 9๊ฐ ์ฌ๋ผ์ง๊ฒ ๋๋ค. ์ด๋ 9๋ garbage๊ฐ ๋๋ ๊ฒ์ด๋ค.
์๊ฐ์ด ์ง๋ ์๋ก ์์ฐ์ค๋ฝ๊ฒ garbage๊ฐ ์ ์ ๋ง์์ง๊ฒ ๋๊ณ , ๊ทธ๋ผ ์ฌ์ฉํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ์ ์์ด ์ค์ด๋ค๊ฒ ๋๋ค. ๊ทธ๋์ ์๋ฐ ํ๋ซํผ์ ๊ฐ์ฉ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ผ์ ํฌ๊ธฐ ์ดํ๋ก ์ค์ด๋ค๋ฉด ์๋์ผ๋ก garbage๋ฅผ ํ์ํด์ ๊ฐ์ฉ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋๋ฆฐ๋ค. ์ด๊ฒ์ garbage collection์ด๋ผ ํ๊ณ , garbage collection thread์ ์ํด ์ฒ๋ฆฌ๋๋ค.
garbage collection์ ๊ฐ์ ๋ก ์์ฒญํ ์๋ ์๋ค.
System.gc();
๊ทธ๋ฌ๋ ์ด ๋ฌธ์ฅ์ ํธ์ถํ๋ค๊ณ ๋ฐ๋ก garbage collection์ด ๋ฐ๋ก ์๋๋๋ ๊ฒ์ด ์๋๋ค. ํ์ํ๋ค๋ ์์ฒญ์ ํ ๊ฒ์ด๊ณ , garbage collection์ ์ ์ ํ ์์ ์ ์คํ์ํจ๋ค.
'๐ฅ๏ธ > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] final()๊ณผ public static final (0) | 2023.04.09 |
---|---|
[Java] ์ ๊ทผ์ ํ์์ public static void ๋ป (0) | 2023.04.06 |
[Java] ๋๊ธฐ ์ฒ๋ฆฌ(Synchronization) / ๋น๋๊ธฐ ์ฒ๋ฆฌ(Asynchronization) (0) | 2023.03.22 |
[Java] Generic ๊ธฐ๋ฒ (0) | 2023.03.22 |
[Java] try ~ catch ~finally ์์ธ์ฒ๋ฆฌ (0) | 2023.03.22 |