Java

[Effective Java] ์•„์ดํ…œ 40. @Override ์• ๋„ˆํ…Œ์ด์…˜์„ ์ผ๊ด€๋˜๊ฒŒ ์‚ฌ์šฉํ•˜๋ผ, ์•„์ดํ…œ 41. ์ •์˜ํ•˜๋ ค๋Š” ๊ฒƒ์ด ํƒ€์ž…์ด๋ผ๋ฉด ๋งˆ์ปค ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ผ.

quedevel 2023. 3. 21. 10:51
728x90
๋ฐ˜์‘ํ˜•

๐ŸŽฏ ์•„์ดํ…œ 40. @Override ์• ๋„ˆํ…Œ์ด์…˜์„ ์ผ๊ด€๋˜๊ฒŒ ์‚ฌ์šฉํ•˜๋ผ.

์žฌ์ •์˜ํ•œ ๋ชจ๋“  ๋ฉ”์„œ๋“œ์— @Override ์• ๋„ˆํ…Œ์ด์…˜์„ ์˜์‹์ ์œผ๋กœ ๋‹ฌ๋ฉด ์‹ค์ˆ˜ ํ–ˆ์„๋•Œ ์ปดํŒŒ์ผ๋ฆฌ๊ฐ€ ์•Œ๋ ค์ค„ ๊ฒƒ์ด๋‹ค.

์˜ˆ์™ธ๋Š” ํ•œ ๊ฐ€์ง€๋ฟ์ด๋‹ค. ๊ตฌ์ฒด ํด๋ž˜์Šค์—์„œ ์ƒ์œ„ ํด๋ž˜์Šค์˜ ์ถ”์ƒ ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•œ ๊ฒฝ์šฐ์—” ์ด ์• ๋„ˆํ…Œ์ด์…˜์„ ๋‹ฌ์ง€ ์•Š์•„๋„ ๋œ๋‹ค.


๐ŸŽฏ ์•„์ดํ…œ 41. ์ •์˜ํ•˜๋ ค๋Š” ๊ฒƒ์ด ํƒ€์ž…์ด๋ผ๋ฉด ๋งˆ์ปค ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ผ.

๋งˆ์ปค ์ธํ„ฐํŽ˜์ด์Šค์™€ ๋งˆ์ปค ์• ๋„ˆํ…Œ์ด์…˜์€ ๊ฐ์ž์˜ ์“ฐ์ž„์ด ์žˆ๋‹ค. ์ƒˆ๋กœ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฉ”์„œ๋“œ ์—†์ด ๋‹จ์ง€ ํƒ€์ž… ์ •์˜๊ฐ€ ๋ชฉ์ ์ด๋ผ๋ฉด ๋งˆ์ปค ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์„ ํƒํ•˜์ž.

ํด๋ž˜์Šค๋‚˜ ์ธํ„ฐํŽ˜์ด์Šค ์™ธ์˜ ํ”„๋กœ๊ทธ๋žจ ์š”์†Œ์— ๋งˆํ‚นํ•ด์•ผ ํ•˜๊ฑฐ๋‚˜, ์• ๋„ˆํ…Œ์ด์…˜์„ ์ ๊ทน ํ™œ์šฉํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์ผ๋ถ€๋กœ ๊ทธ ๋งˆ์ปค๋ฅผ ํŽธ์ž…์‹œํ‚ค๊ณ ์ž ํ•œ๋‹ค๋ฉด

๋งˆ์ปค ์• ๋„ˆํ…Œ์ด์…˜์ด ์˜ฌ๋ฐ”๋ฅธ ์„ ํƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ElementType.TYPE์„ ์‚ฌ์šฉํ• ๊ฑฐ๋ผ๋ฉด ํ•œ๋ฒˆ ๋” ์ƒ๊ฐํ•ด๋ณด์ž.


์ฐธ๊ณ  ์ž๋ฃŒ

Joshua Bloch, ใ€ŽEffective Java 3/Eใ€, ๊ฐœ์•ž๋งต์‹œ ์˜ฎ๊น€, ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ธ์‚ฌ์ดํŠธ(2018)
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966262281&orderClick=LEa&Kc=

728x90
๋ฐ˜์‘ํ˜•