κ΅λΉμ§μ D+62
- μλ°νλ‘κ·Έλλ°7 -
νμ μ μ ν
μ λ€λ¦ νμ μ μ νμ κ±Έμ΄μΌνλ μ΄μ λ νμ λ νμ μ μ§μ ν΄ λμΌλ©΄ νμ λ νμ μ λν 곡ν΅λ λ©μλλ₯Ό μ¬μ©ν μ μλ€.
→ κΈ°κ³μ μ΄μ ) νμ μ μ νμ κ±Έμ΄λμ§ μμΌλ©΄ μ무거λ μ¬μ μμΌλ©°, μ΄λ νΉμ λ©μλλ₯Ό λΆλ¬μ¬ μ μλ€.
→ λ Όλ¦¬μ μ΄μ ) νμ μ μ νμ κ±Έμ΄λμμ μμ λ Όλ¦¬μ κ°μ΄λλΌμΈμ μ 곡νλ©° μ΄λ 리λλΉλ¦¬ν°κ° μμΉνλ€.
<T> : νμ μ΄λ€κ²μ΄λ μ¬ μ μμ΄
<T extends Number> : Numberνμ μμ νμλ ν΄λμ€λ§ μ¬ μ μμ΄ (Integer, Double)
• ν΄λμ€λ₯Ό μ΄μ©ν νμ μ μ ν
- class Box <T extends Number> { ... }
- μΈμ€ν΄μ€ μμ±μμ νμ μΈμλ‘ Number λλ μ΄λ₯Ό μμνλ ν΄λμ€λ§ μ¬ μ μλ€.
class Box <T extends Number>
{
private T obj;
public T get()
{
return obj;
}
public void set(T obj)
{
this.obj = obj;
}
public int getIntValue()
{
return obj.intValue();
}
}
• μΈν°νμ΄μ€λ₯Ό μ΄μ©ν νμ μ μ ν
- ν΄λμ€λ₯Ό μ΄μ©ν νμ μ μ νκ³Ό κ°μ μλ¦¬λ‘ μΈν°νμ΄μ€κ° μμ λ, ν΄λΉ μΈν°νμ΄μ€λ₯Ό ꡬνν ν΄λμ€μΌ κ²½μ°μ μ¬ μ μλ€.
• νμ μ λ€μ€ μ ν
- νμ μ λ€μ€μΌλ‘ μ ννκ³ μΆμ λμ &λ₯Ό ν΅ν΄μ μ΄μ€μΌλ‘ μ νμ λ μ μλ€.
class Box <T extends Number & Eatable> { ... }
class Box <T extends Animal & Egg> { ... }
μ λ€λ¦ λ©μλ
μ λ€λ¦ λ©μλλ ν΄λμ€ μ μ²΄κ° μλ λ©μλμμλ§ μ λ€λ¦μ μ μ©νλ κ²μΌλ‘ μ λ€λ¦ ν΄λμ€μ λ§μ°¬κ°μ§λ‘ νΈμΆμμ μ κ²°μ λλ€.
μ λ€λ¦ ν΄λμ€μ μμ
μ λ€λ¦ν΄λμ€λ μΌλ°μ μΈ μμλ©μ»€λμ¦μ κ·Έλλ‘ μ¬μ©ν μ μλ€.
μ΄λ, λΆλͺ¨ν΄λμ€κ° μ λ€λ¦μ μ¬μ©νμ λμ μμν΄λμ€λ μ λ€λ¦ ν΄λμ€λ₯Ό μ¬μ©ν΄ μ£Όμ΄μΌ νλ€.
νκ² νμ
νμ μΆλ‘ μ ν΅ν΄μ μμλΈ λ°μ΄ν° νμ μ΄λ€.
νμ μ κ²°μ νλ μμ μμ μ΄λ€ νμ μΈμ§λ₯Ό μμμλ κ²μ μ μ μλ κ²μ νκ²νμ μ΄λΌκ³ νλ€.
μ΄λ νμ μ λͺ¨λ₯΄λ©΄ μΆλ‘ μ μμνλ€.
λκΈ