πŸ“– Effective Java (쀑단)

μž‘λ…„μ— μŠ€ν„°λ””λ₯Ό ν•˜λ©΄μ„œ κ³΅λΆ€ν–ˆλ˜ λ‚΄μš©μ΄μ§€λ§Œ λ³΅μŠ΅μ„ μœ„ν•΄ 핡심 λ‚΄μš© μœ„μ£Όλ‘œ μ •λ¦¬ν•˜λ©΄μ„œ ν•™μŠ΅ν–ˆμŠ΅λ‹ˆλ‹€. 이 λΆ€λΆ„μ˜ λŒ€λΆ€λΆ„μ˜ μ˜ˆμ‹œ μ½”λ“œλŠ” μ΄νŽ™ν‹°λΈŒ μžλ°” 제곡 μ˜€ν”ˆμ†ŒμŠ€μ—μ„œ λ°œμ·Œν–ˆμŠ΅λ‹ˆλ‹€.


Contents


2μž₯. 객체 생성과 파괴

μ•„μ΄ν…œ 1. μƒμ„±μž λŒ€μ‹  정적 νŒ©ν„°λ¦¬ λ©”μ„œλ“œλ₯Ό κ³ λ €ν•˜λΌ.
객체λ₯Ό 생성할 λ•Œ μƒμ„±μž λŒ€μ‹  정적 νŒ©ν„°λ¦¬ λ©”μ„œλ“œλ₯Ό μ΄μš©ν•˜λ©΄ 객체의 생성과 파괴λ₯Ό 관리할 수 μžˆμŠ΅λ‹ˆλ‹€.
μ—¬κΈ°μ„œ getInstance()λ₯Ό 정적 νŒ©ν„°λ¦¬ λ©”μ„œλ“œ μ‚¬λ‘€λ‘œ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ ‡κ²Œ 객체 생성에 λŒ€ν•œ λ©”μ„œλ“œμ΄κΈ° λ•Œλ¬Έμ— λ©”μ„œλ“œλͺ…을 μ‚¬μš©ν•΄μ„œ λ°˜ν™˜ 객체에 λŒ€ν•œ μ„€λͺ… ex)probablePrime 을 μ“Έ 수 있게 λ©λ‹ˆλ‹€. 그리고 μ•„λž˜ 싱글톀 예제처럼 μΈμŠ€ν„΄μŠ€λ₯Ό ν˜ΈμΆœμ‹œλ§ˆλ‹€ μƒμ„±ν•˜μ§€ μ•ŠλŠ” λ“± μΈμŠ€ν„΄μŠ€ ν†΅μ œκ°€ κ°€λŠ₯ν•΄μ§‘λ‹ˆλ‹€.

class Singleton {
    private static Singleton singleton = null;
    private Singleton() {}
    static Singleton getInstance() {
        if (singleton == null) {
            singleton = new Singleton();
        }
        return singleton;
    }
}

λ°˜ν™˜ νƒ€μž…μ˜ ν•˜μœ„ νƒ€μž… 객체λ₯Ό λ°˜ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ•„μ΄ν…œ 2. μƒμ„±μžμ— λ§€κ°œλ³€μˆ˜κ°€ λ§Žλ‹€λ©΄ ν•„ν„°λ₯Ό κ³ λ €ν•˜λΌ.
점측적 μƒμ„±μž νŒ¨ν„΄μ„ μ‚¬μš©ν•˜λ©΄ λ°›λŠ” λ§€κ°œλ³€μˆ˜κ°€ μ–΄λ–€ 것인지 ν™•μΈν•˜κΈ° ν•œ λˆˆμ— νŒŒμ•…μ΄ μ–΄λ ΅κ³  μˆœμ„œλ₯Ό λ°”κΏ”μ“Έ 경우 λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ¬Όλ‘  IntelliJλŠ” κ·Έ μ–΄λ €μš΄ κ±Έ ν•΄κ²°ν•΄μ€λ‹ˆλ‹€. κ·Έλž˜λ„ 점측적 μƒμ„±μž νŒ¨ν„΄μ΄ μ—¬λŸ¬ 개 μžˆμ„ λ•ŒλŠ” κ°œλ°œμ‹œ νŒŒμ•…μ΄ λ„ˆλ¬΄ μ–΄λ ΅μŠ΅λ‹ˆλ‹€.

NutritionFacts cocaCola = new NutritionFacts(240, 8, 100, 0, 35, 27);

κ·Έλ ‡λ‹€λ©΄ μžλ°” 빈즈 νŒ¨ν„΄μ€ μ–΄λ–¨κΉŒμš”?


3μž₯. λͺ¨λ“  객체의 곡톡 λ©”μ„œλ“œ


effective-java-3e-source-code
μ΄νŽ™ν‹°λΈŒ μžλ°” Effective Java 3/E
ν•œλ‹¬ν•œκΆŒο½œμ΄νŽ™ν‹°λΈŒ μžλ°”

results matching ""

    No results matching ""