π 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
νλ¬νκΆο½μ΄νν°λΈ μλ°