๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์‹ฑ๊ธ€ํ„ด ํŒจํ„ด (1)

JUINTINATION

์‹ฑ๊ธ€ํ„ด(Singleton) ํŒจํ„ด

์‹ฑ๊ธ€ํ„ด ํŒจํ„ด์ด๋ž€? '๋‹จ ํ•˜๋‚˜์˜ ์›์†Œ๋งŒ์„ ๊ฐ€์ง„ ์ง‘ํ•ฉ'์ด๋ผ๋Š” ์ˆ˜ํ•™ ์ด๋ก ์—์„œ ์œ ๋ž˜๋œ ์ธ์Šคํ„ด์Šค๊ฐ€ ๋”ฑ ํ•˜๋‚˜๋งŒ ์ƒ์„ฑ๋˜๊ณ  ์–ด๋””์—์„œ๋“  ์ด ์ธ์Šคํ„ด์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•˜๋Š” ํŒจํ„ด์ด๋‹ค. ํด๋ž˜์Šค์— ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด์„ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ƒ์„ฑ์ž๋ฅผ private ๋ฉ”์„œ๋“œ๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค. class Singleton { private Singleton() {} } ์ ‘๊ทผํ•  ํ•˜๋‚˜์˜ ์ธ์Šคํ„ด์Šค๋ฅผ static ์ธ์Šคํ„ด์Šค๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค. class Singleton { private static Singleton instance = null; private Singleton() {} } ํ•˜๋‚˜์˜ static ์ธ์Šคํ„ด์Šค์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ static ๋ฉ”์„œ๋“œ๋ฅผ ๋งŒ๋“ ๋‹ค. class Singleton { private static Singleton i..