๋ชฉ๋กEffectiveJava (1)

DevLog ๐Ÿ˜ถ

[์ดํŒฉํ‹ฐ๋ธŒ์ž๋ฐ”] ์•„์ดํ…œ 03. private ์ƒ์„ฑ์ž๋‚˜ ์—ด๊ฑฐ ํƒ€์ž…์œผ๋กœ ์‹ฑ๊ธ€ํ„ด์ž„์„ ๋ณด์ฆํ•˜๋ผ

๐Ÿ’ฌ ์ดํŒฉํ‹ฐ๋ธŒ์ž๋ฐ” ์•„์ดํ…œ 3์„ ์ฝ๊ณ  ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. โœ”๏ธ ์‹ฑ๊ธ€ํ„ด ์ธ์Šคํ„ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์˜ค์ง ํ•˜๋‚˜๋งŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ํด๋ž˜์Šค. ๋ฉ”๋ชจ๋ฆฌ ๋‚ญ๋น„๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ, ๊ฒฐํ•ฉ๋„๊ฐ€ ์ฆ๊ฐ€ํ•˜๋ฉฐ ํด๋ผ์ด์–ธํŠธ์˜ ํ…Œ์ŠคํŠธ๊ฐ€ ์–ด๋ ค์›Œ์งˆ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ์กด์žฌํ•œ๋‹ค. -> ์ธ์Šคํ„ด์Šค๋ฅผ ๊ตฌํ˜„ํ•ด์„œ ๋งŒ๋“  ์‹ฑ๊ธ€ํ„ด์ด ์•„๋‹ˆ๋ผ๋ฉด, ์‹ฑ๊ธ€ํ„ด ์ธ์Šคํ„ด์Šค๋ฅผ mock ๊ฐ์ฒด๋กœ ๋Œ€์ฒดํ•˜๊ธฐ๊ฐ€ ํž˜๋“ค๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๐Ÿ’ฌ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ• 1. ์ƒ์„ฑ์ž๋ฅผ ๋ชจ๋‘ private๋กœ ๋งŒ๋“ค๊ณ , ์ธ์Šคํ„ด์Šค์˜ ์œ ์ผํ•œ ์ ‘๊ทผ์ž๋ฅผ public static์œผ๋กœ ์ƒ์„ฑํ•˜๊ธฐ public class Crew { public static final Crew INSTANCE = new Crew(); private Crew() { ... } public void hello() {...} }..

๐Ÿ“–/Effective Java 2023. 4. 4. 23:29