JavaRush /Java Blog /Random-KO /๊ฒŒํ„ฐ ๋ฐ ์†์ƒ๋œ ์บก์Šํ™”
Vadelic
๋ ˆ๋ฒจ 14
ะŸะฐัะฐะดะตะฝะฐ

๊ฒŒํ„ฐ ๋ฐ ์†์ƒ๋œ ์บก์Šํ™”

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋™์•ˆ getter์˜ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๋™์ž‘์„ ์ ‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ ๊ฐ•์˜์™€ IntelliJ IDEA์—์„œ ์ƒ์„ฑ๋œ ๊ฒŒํ„ฐ์—์„œ๋„ ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ์ฒด๊ณ„๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. public final class A { private A field; public A getField() { return field; } public void setField(A field) { this.field = field; } } ํ•„๋“œ๊ฐ€ ๊ธฐ๋ณธ ์œ ํ˜•์ด๊ฑฐ๋‚˜ ๊ฐ’์œผ๋กœ ์ „๋‹ฌ๋˜๋Š” ๋ฌธ์ž์—ด์ธ ๊ฒฝ์šฐ ๋ชจ๋“  ๊ฒƒ์ด ๊ดœ์ฐฎ์ง€๋งŒ ๊ฐ์ฒด๊ฐ€ ์ฐธ์กฐ๋กœ ์ „๋‹ฌ๋˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๊ทธ๋Ÿฐ ๋‹ค์Œ getter๋ฅผ ํ†ตํ•ด ํ•„๋“œ์— ๋Œ€ํ•œ ์ „์ฒด ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ์–ป์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ์„ค์ •๋œ ๋ณดํ˜ธ ์•ก์„ธ์Šค ์ˆ˜์ค€์„ ๋ฌดํšจํ™”ํ•ฉ๋‹ˆ๋‹ค. setter์— ์œ ํšจ์„ฑ ์กฐ๊ฑด์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ๊ทธ๋Ÿฌํ•œ getter๋ฅผ ํ†ตํ•ด ์šฐํšŒํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋Š” ์บก์Šํ™”๋ฅผ ์œ„๋ฐ˜ํ•˜๋ฏ€๋กœ ์ด ๋ฌธ์ œ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ์ฒด์˜ ๋ณต์ œ๋ณธ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์˜ณ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฐ์ฒด๊ฐ€ ์‰ฝ๊ฒŒ ๋ณต์ œ๋  ์ˆ˜๋Š” ์—†๋‹ค๋Š” ์ ์„ ์ดํ•ดํ•˜๋ฉฐ, ์ด๊ฒƒ์ด ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์ฑ…์ž„์— ๋งก๊ฒจ์ง„๋‹ค๋ฉด ๊ฐ•์˜ ์–ด๋””์—๋„ ์ด์— ๋Œ€ํ•œ ์–ธ๊ธ‰์ด ์—†๋Š” ์ด์œ ๊ฐ€ ์ด์ƒํ•ฉ๋‹ˆ๋‹ค. UPD: ๋ฌผ๋ก  ์•„์ด๋””์–ด๋กœ์„œ์˜ getter๋Š” ์บก์Šํ™”๋ฅผ ์œ„๋ฐ˜ํ•˜์ง€ ์•Š์ง€๋งŒ OOP ์›์น™์„ ๋ฐฐ๋ฐ˜ํ•˜์ง€ ์•Š๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘์„ฑ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” getter๊ฐ€ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ž˜์Šค์— ์ง€์ •๋œ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ๊ฐ์ฒด๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. Collections ํด๋ž˜์Šค์—๋Š” ์ฝ๊ธฐ ์ „์šฉ ์ปฌ๋ ‰์…˜์„ ์ƒ์„ฑํ•˜๋Š” ํ›Œ๋ฅญํ•œ ๋ฉ”์„œ๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ •๋ ฌ ๋ถˆ๊ฐ€๋Šฅ๊ณผ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋‹ค๋ฅธ ์ œํ•œ ์‚ฌํ•ญ์„ ๋ถ€๊ณผํ•˜์ง€๋งŒ ์ด ๊ฒฝ์šฐ ์ด ํด๋ž˜์Šค์—๋Š” ๋” ๋‚˜์€ ํŽธ์˜๋ฅผ ์œ„ํ•ด unmodifyingSortedSet unmodifyingSortedMap ๋ฐ ๋ช‡ ๊ฐ€์ง€ ๋” ๋งŽ์€ ์ œํ•œ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. public static Collection unmodifiableCollection(Collection c)
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION