κ°μ²΄μ§ν₯μ μ¬μ€κ³Ό μ€ν΄ - 2-1. μνμ νλ, μλ³μμ κ΄νμ¬
by rlaehddnd0422ν립 μΌλ§μ 물체 μΈμ§ μ€ν
μ€νμ ν λλ‘ μΈκ°μ μ μ²μ μΌλ‘ νκ³ λ μΈμ§λ₯λ ₯μ μ΄μ©ν΄ μΈμμ μ‘΄μ¬νλ λ€μν κ°μ²΄λ₯Ό μλ³νκ³ λΆλ₯ν¨μΌλ‘μ¨ μΈμμ μ΄ν΄νλ€λ μ¬μ€μ 보μ¬μ€λλ€. λ¬Έμ λ λ°λ‘ μΈκ°μ μΈμ§ λ₯λ ₯μ 물리μ μΈ νκ³λ₯Ό λμ΄ μΆμμ μΈ μ¬λ¬ΌκΉμ§λ κ°μ²΄λ‘ μΈμν μ μκΈ° λλ¬Έμ 물리μ μΈ κ°λ μ λμ΄μ μΆμμ μΈ κ°λ κΉμ§ κ°μ²΄λ‘ μΈμν λ§νΌ μννΈμ¨μ΄μ μΈκ³ μμ λ€μν κ°μ²΄λ€μ΄ λͺ¨μ¬ μ΄λ£¨μ΄μ Έ μλ€κ³ μκ°νκΈ° μ½λ€λ κ²μ λλ¬.
νμ§λ§ μννΈμ¨μ΄ μΈκ³μ νμ€ μΈκ³μ μ μ¬μ±μ λ± μ΄μ λκΉμ§μΌ λΏ, κ°μ²΄μ§ν₯ ν¨λ¬λ€μμ λͺ©μ μ 'λͺ¨λ°©'μ΄ μλ μλ‘μ΄ μΈκ³λ₯Ό 'μ°½μ‘°'νλ κ²μ κ°κΉλ€κ³ μ€λͺ ν©λλ€.
νμ€μΈκ³μ 'κ°λ‘λ±'μΌλ‘ λΉμ ν΄λ³΄μλ©΄, νμ€μΈκ³μμλ κ°λ‘λ±μ μ€μ€λ‘ λΆμ λ°ν μ μκ³ , λ€λ₯Έ μ¬λ κ°μ²΄μ μν΄ λΆμ΄ λ°νμ§κ² λμ§λ§, μννΈμ¨μ΄ μΈκ³μμ 'κ°λ‘λ±' κ°μ²΄λ μ€μ€λ‘ μ μμ μΌκ±°λ λ μ μλ€λ κ²μ΄μ£ .
κ²μΌλ‘ 보기μλ μ°λ¦¬κ° μκ³ μλ νμ€ μΈκ³μ μννΈμ¨μ΄ μΈκ³κ° λ§€μ° μ μ¬ν 맀컀λμ¦μΌλ‘ λμνλ κ²μ²λΌ λ³΄μΌ μ μμ§λ§, κ·Έ μμ μμΈν λ€μ¬λ€ 보면 μννΈμ¨μ΄ μΈκ³λ νμ€ μΈκ³μ λΉκ΅νμ¬ λ§€μ° μ΄μ§μ μΈ λͺ¨μ΅μΌλ‘ ννλμ΄ μλ€λ κ²μ
λλ€.
μ¦, μννΈμ¨μ΄ μΈκ³μ κ°μ²΄λ μ΄λ¬ν 'μμ¨μ±'μ κ°μ΅λλ€.
μ΄μν λλΌμ μ리μ€λ‘ λΉμ
μ±
μμλ μ΄μν λλΌμ μλ¦¬μ€ μ€ν 리λ₯Ό ν λλ‘ μννΈμ¨μ΄ μΈκ³λ₯Ό μ€λͺ
ν©λλ€.
λνμ μ€κ±°λ¦¬λ₯Ό μμ½νμλ©΄ λνμ μ£ΌμΈκ³΅ μ리μ€λ μλ£λ₯Ό λ§μλ νμλ₯Ό ν΅ν΄ μμ μ ν€λ₯Ό ν¬κ² ν μ μκ³ , λΆμ±μ§μ ν΅ν΄ μμ μ ν€λ₯Ό μκ² ν μ μμ΅λλ€.
μ¬κΈ°μ ν€λ μ리μ€λΌλ κ°μ²΄μ νλ‘νΌν°λ‘, μλ£λ₯Ό λ§μκ³ λΆμ±μ§μ νλ νμλ κ°μ²΄μ λ©μλλ‘ λΉμ ν μ μμ΅λλ€.
κ·Έλ λ€λ©΄ μ리μ€μ μνλ₯Ό κ²°μ νλ κ²μ μλ£λ₯Ό λ§μλ νμλΌκ³ ν μ μμ΅λλ€. λμμ νλμ κ²°κ³Όλ₯Ό κ²°μ νλ κ²μ μν(μλ£λ₯Ό λ§μκΈ° μ μ ν€)μ΄λ©΄μ λ§μ΄μ£ .
μνλ₯Ό κ²°μ νλ κ² -> νλ / μλ£λ₯Ό λ§μ¬μΌλ‘μ¨ ν€(μν)κ° μ»€μ§λ€.
νλμ κ²°κ³Όλ₯Ό κ²°μ νλ κ² -> μν / νλμ νκΈ°μ μ μνλ₯Ό λ°νμΌλ‘ μνκ° κ²°μ λλ€.
μΆκ°λ‘ λ§μ½ μ리μ€μ ν€κ° 130cmλΌκ³ κ°μ νμ λ, 50cmμ λ¬Έμ λ€μ΄κ°λ νμλ₯Ό νκΈ° μν΄μλ λ¬Έμ λ€μ΄κ°λ 'νμ'λ₯Ό νκΈ° μ μλ£λ₯Ό μμ·¨νλ 'νμ'κ° μ νλμ΄μΌ νλ κ²μ²λΌ νμμ μμκ° κ²°κ³Όμ μν₯μ λΌμΉκ² λ©λλ€.
μ§κΈκΉμ§ μ€λͺ
ν μ 보λ₯Ό ν λλ‘ μ리μ€μ νΉμ§μ μ 리ν΄λ³΄κ² μ΅λλ€.
- μ리μ€λ 'μν'λ₯Ό κ°μ§λ©° 'μν'λ λ³κ²½μ΄ κ°λ₯νλ€.
- μ리μ€μ μνλ₯Ό λ³κ²½νλ κ²μ μ리μ€μ νμ
- νμμ κ²°κ³Όλ μνμ μμ‘΄μ μ λλ€.
- νμμ μμλ κ²°κ³Όμ μν₯μ λΌμΉλ€.
- μ리μ€μ μνκ° λ³κ²½λλλΌλ μ리μ€λ μ μΌνκ² μλ³ κ°λ₯ν μ‘΄μ¬μ΄λ€.
- μνκ° λ³κ²½λλ€ νλλΌλ ν΄λΉ κ°μ²΄κ° λ€λ₯Έ κ°μ²΄λ‘ λ³κ²½λλ κ²μ΄ μλλΌλ μλ―Έλ‘ μ΄ν΄νμ΅λλ€.
μ΄λ κ² μ΄μν λλΌμ μ리μ€μ λΉμ ν μ΄μ λ μ΄μν λλΌμ μ리μ€λ νμ€μΈκ³κ° μλ μννΈμ¨μ΄ μΈκ³μ κ°μ²΄μ μ€μν λͺ κ°μ§μ 곡ν΅μ μ 곡μ νκΈ° λλ¬Έμ
λλ€.
μ΄ μ±
μμ μ μνλ κ°μ²΄λ μ΄λ¬ν©λλ€.
κ°μ²΄λ μλ³ κ°λ₯ν κ°μ²΄λ‘μ, κ΅¬λ³ κ°λ₯ν μλ³μ, νΉμ§μ μΈ νλ, λ³κ²½ κ°λ₯ν μνλ§ μλ€λ©΄ μΆμμ μΈ κ°λ μ΄ λ μλ μκ³ , μ€μ§μ μΈ μ¬λ¬Όμ΄ λ μλ μλ€. κ°μ²΄λ μ μ₯λ μνμ μ€ν κ°λ₯ν μ½λλ₯Ό ν΅ν΄ ꡬνλλ€.
μμ½νλ©΄ μν, νλ, μλ³μλ₯Ό κ°μ§λ€λ©΄ κ°μ²΄κ° λ μ μλ€λ κ²μΈλ°, μ§κΈλΆν° μΈ κ°μ§μ κ°λ
λ€μ μμλ΄
μλ€.
μν
μ°λ¦¬κ° λΉμ₯ μ¬νμ μν΄ λΉνκΈ°λ₯Ό μ΄μ© νλ €λ©΄ μ΄λ»κ² ν΄μΌ ν κΉμ?
μ¬κΆμ λ°κΈλ°λλ€. βΆοΈ ν곡κΆμ μμ½νλ€. βΆοΈ 곡νμ κ°λ€. βΆοΈ λΉνκΈ°μ νμΉνλ€.
λ 볡μ‘ν μ μ°¨κ° μκ² μ§λ§, μμ
νλ©΄ μ΄λ° μ μ°¨λ€μ κ±°μ³μΌ νκ² μ£ . μ΄μ κ°μ νλνλμ μ μ°¨λ€μ νμλ‘ λ³΄λ©΄ μ΄ νμλ€μ νμκ° μ κΈ°κ΄κ³λ₯Ό κ°μ§κΈ° λλ¬Έμ νμμ μμκ° λ§€μ° μ€μν©λλ€. λΉνκΈ°μ νμΉνκ³ ν곡κΆμ μμ½ν μλ μλ κ²μ²λΌ λ§μ
λλ€.
κ°μ²΄ λν νμμ λ°λΌ μν(λΉνκΈ° νμΉ μ¬λΆ)κ° κ²°μ λκ³ , μ΄ μνλ μ κΈ°μ μΈ νλλ€μ μν΄ κ²°μ λ μ μμ΅λλ€.
μ΄ λ λ§μ½ μνλ₯Ό μ΄μ©νμ§ μλλ€λ©΄, νλμ κ²°κ³Όλ₯Ό νλ¨νλ λ°©μμ΄ λ³΅μ‘νκ³ λ²κ±°λ‘μκ³Ό λμμ μ΄ν΄νκΈ° μ΄λ ΅κ² λ©λλ€. μ΄λ₯Ό ν΄κ²°νκ³ μ νλμ κ³Όμ κ³Ό κ²°κ³Όλ₯Ό λ¨μνκ² κΈ°μ νκΈ° μν΄μ μνλΌλ κ°λ
μ κ³ μνμ¬ λμ
ν κ²μ
λλ€.
μνλ₯Ό μ΄μ©νλ©΄ κ³Όκ±°μ μ΄λ€ νλμ νμλμ§ λͺ¨λ₯΄λλΌλ λΉνκΈ° νμΉ μ¬λΆλ₯Ό μ μ μλ κ²κ³Ό κ°μ΄ μ κΈ°μ μΈ κ³Όμ λ€μ 볡μ‘μ±μ μ΄ν΄νμ§ μκ³ λ μ€λ‘μ§ 'μν'λ₯Ό ν΅ν΄μλ νλμ κ²°κ³Όλ₯Ό μμΈ‘ν μ μλ€λ ν° μ₯μ μ κ°κ² λλ κ²μ΄μ£ .
μνμ νλ‘νΌν°
κ°μ²΄λ μνλ‘ νλ‘νΌν°λ₯Ό κ°μ§λλ€. νλ‘νΌν°λ μνλ₯Ό ꡬμ±νλ μμλ‘, νλ‘νΌν° μμ²΄κ° λ³κ²½λ μ¬μ§κ° μμΌλ 'μ μ 'μΈ μνμ΄λ©°, νλ‘νΌν°μ κ°μ λ³κ²½μ μ¬μ§κ° μμΌλ 'λμ 'μΈ μνλ‘ κ΅¬λΆν μ μκ² μ΅λλ€.
public class Alice {
/**
* height, position : νλ‘νΌν°,
* (height = 130, position = 0)μ΄λΌλ©΄ 130, 0μ νλ‘νΌν° κ°
*/
private final Integer height;
private final Integer position;
public Alice(Integer height, Integer position) {
this.height = height;
this.position = position;
}
}
μ΄ λ λ¨μν κ°μ κ·Έ μμ²΄λ‘ λ
립μ μΈ μλ―Έλ₯Ό κ°μ§κΈ°λ³΄λ€, νΉμ±μ νννλλ° μ¬μ©λκΈ° λλ¬Έμ μΌλ°μ μΌλ‘ κ°μ²΄λ‘ μΉλΆνμ§ μμ΅λλ€.
λ²μΈ) μμ κ°μ ν¬μ₯ν "κ° κ°μ²΄"λ‘ λ€λ£¨κΈ°λ νλ€.!
λ°λΌμ μΌλ°μ μΌλ‘ κ°μ²΄λ₯Ό ꡬμ±νλ λ¨μ κ°μΈ μμ± λΏλ§ μλλΌ κ° κ°μ²΄ λν νλ‘νΌν°κ° λ μ μλλ°, μ΄λ₯Ό λ§ν¬λΌκ³ ν©λλ€.
κ°μ²΄μ κ°μ²΄ μ¬μ΄μμ λ§ν¬κ° μ‘΄μ¬ν΄μΌμ§λ§ λ©μμ§λ₯Ό μ£Όκ³ λ°μ μ μμ΅λλ€. μμλ₯Ό νλ² μ΄ν΄λ³΄κ² μ΅λλ€.
- height, position : μμ± νλ‘νΌν°λ‘ κ°μ²΄μ νΉμ±μ λνλ.
- Drink : λ§ν¬ νλ‘νΌν°λ‘ λ©μμ§λ₯Ό μ£Όκ³ λ°κΈ° μν΄ μ¬μ©λ¨.
- κ°μ²΄λ μ΄ λ κ°μ§ μ’ λ₯μ μ μ νλ‘νΌν°λ₯Ό κ°μ§ μ μκ³ , λμ μ νλ‘νΌν° κ°μΌλ‘ ꡬμ±λλ©°, κ°μ²΄μ νλ‘νΌν°λ λ¨μν κ°κ³Ό λ€λ₯Έ κ°μ²΄λ₯Ό μ°Έμ‘°νλ λ§ν¬λ‘ ꡬλΆλ μ μλ€.
κ°μ²΄λ μμ¨μ μΈ μ‘΄μ¬λΌλ μ μ λͺ μ¬ν©μλ€. κ°μ²΄μ§ν₯μ μΈκ²μμ κ°μ²΄λ λ€λ₯Έ κ°μ²΄μ μνμ μ§μ μ μΌλ‘ μ κ·Όν μλ μκ³ , μνλ₯Ό λ³κ²½ν μλ μλ€(getter, setter). μμ¨μ μΈ κ°μ²΄λ μμ μ μνμ λν΄ μμ μ΄ μ± μμ μ§μμΌν©λλ€.!
μΈλΆμ κ°μ²΄κ° μ§μ μ μΌλ‘ κ°μ²΄μ μνλ₯Ό μ‘°μ ν μ μλ€λ©΄, κ°μ μ μΌλ‘ κ°μ²΄μ μνλ₯Ό λ³κ²½νκ±°λ μ‘°νν μ μλ λ°©λ²μ΄ νμν©λλ€.
μ΄ μμ μ νλ(λ©μλ)κ° λ±μ₯νλλ°, νλμ λ€λ₯Έ κ°μ²΄λ‘ νμ¬κΈ κ°μ μ μΌλ‘ κ°μ²΄μ μνλ₯Ό λ³κ²½νλ κ²μ κ°λ₯νκ² ν΄μ€λλ€.
μ΄ κ°μ μ μΈ λ°©λ²μ μ¬μ©νλ κ²μ μ μΈνλ©΄, κ°μ²΄μ§ν₯μ κΈ°λ³Έμ μΈ μ¬μμ μνμ μνλ₯Ό μ‘°μ νκΈ° μν νλμ νλμ λ¨μλ‘ λ¬Άλλ€λ μ μ λ°λμ λͺ μ¬ν©μλ€.
νλ(λ©μλ)
μνμ νλμ μ°κ΄μ±
- μ± μμ μμ£Ό μΈκΈλλ λ§νΌ μ€μν λ΄μ©μ΄λΌκ³ μκ°λκΈ°μ λ€μ ν λ² μΈκΈνμλ©΄, κ°μ²΄μ μνλ₯Ό λ³κ²½νλ κ²μ Only κ°μ²΄μ μλ°μ μΈ νλ λΏμ λλ€.
- μ΄μ²λΌ κ°μ²΄μ νλμ μν΄ κ°μ²΄μ μνκ° λ³κ²½λλ κ²μ λΆμ ν¨κ³Ό(Side Effect)λΌ ν©λλ€.
- κ°μ²΄μ νλμ μνμ μν₯μ λ°κ³ , μνλ₯Ό λ³κ²½μν΅λλ€.
- μ리μ€λ₯Ό μμλ‘ λ€λ©΄ μ리μ€μ μν(ν€)κ° 50cmμ΄νμΈ κ²½μ°μλ§ "λ¬Έμ λ€μ΄κ°λ νμ"λ₯Ό μνν μ μλ€λ μ μμ μνμ μν₯μ λ°κ² λλ€λ κ²μ΄κ³ , νμλ₯Ό ν΅ν΄ μνλ₯Ό λ³κ²½νλ€λ κ²μ "μλ£λ₯Ό μμ·¨νλ νμ"λ₯Ό ν΅ν΄ μν(ν€)λ₯Ό λ³κ²½μν¨λ€λ λΉμ λ‘ μ΄ν΄ν μ μμ΅λλ€.
μνλ₯Ό μ΄μ©νλ€λ©΄ κ°μ²΄μ 볡μ‘ν νλλ μ½κ² μ΄ν΄ν μ μμ΅λλ€.
νλ ₯κ³Ό νλμ μ°κ΄μ±
κ°μ²΄λ λ€λ₯Έ κ°μ²΄μ μ€λ‘μ§ λ©μμ§λ₯Ό ν΅ν΄μλ§ μμ¬μν΅ν μ μλ€λ κ²μ λ€μ ν λ² κΈ°μ΅ν©μλ€.
κ°μ²΄μ μνλ₯Ό κ°μ²΄ μμ μ νλμ ν΅ν΄ λ³κ²½νλ€λ μ μμ κ°μ²΄λ₯Ό λ€λ₯Έ μ¬λμ λμμ λ°μ§ μλ κ³ λ
ν μ¬κ³Ό κ°μ μ‘΄μ¬λ‘ κΈ°μ΅ν μ μλλ°, κ²°μ½ κ·Έλ μ§ μμ΅λλ€. κ°μ²΄λ μμ μ μνλ₯Ό λ³κ²½νλ λΆμν¨κ³Ό λΏλ§ μλλΌ, λ€λ₯Έ κ°μ²΄μ νλ ₯νκΈ° μν΄ λ©μμ§λ₯Ό μ μ‘νμ¬ μμ²νλ λ°©μκΉμ§ νλμ ν΅ν΄ μνν μ μμ΅λλ€. μ΄ μ±
μμλ νλμ μ΄λ κ² μ μν©λλ€.
νλ(λ©μλ)μ΄λ, μΈλΆμ μμ² λλ μμ λ λ©μμ§μ μλ΅νκΈ° μν΄ λμνκ³ λ°μνλ νλμ΄λ€.
νλμ κ²°κ³Όλ‘ κ°μ²΄λ μμ μ μνλ₯Ό λ³κ²½νκ±°λ, λ€λ₯Έ κ°μ²΄μκ² λ©μμ§λ₯Ό μ λ¬ν μ μλ€. κ°μ²΄λ νλμ ν΅ν΄ λ€λ₯Έ κ°μ²΄μ νλ ₯μ μ°Έμ¬νλ―λ‘ νλμ μΈλΆμ κ°μμ (public)μ΄μ΄μΌ νλ€.
κ°μ²΄μ κ°μ²΄κ° λ©μμ§λ₯Ό ν΅ν΄ νλ ₯νλ μμλ₯Ό κ³ κ°κ³Ό μ£Όλ¬Έ κ°μ²΄λ₯Ό ν΅ν΄ μμλ³΄κ² μ΅λλ€.
public class Main {
public static void main(String[] args) {
Customer customer = new Customer("Alice");
String orderedMenu = customer.makeOrder("salad", 1);
Order order = Order.createOrder(orderedMenu);
customer.receiveFeedback(order.sendFeedback());
}
}
1.κ³ κ° κ°μ²΄λ μ£Όλ¬Έ κ°μ²΄μκ² λ©μμ§λ₯Ό ν΅ν΄ μ£Όλ¬Έ μ 보λ₯Ό μ λ¬ν©λλ€.
customer.makeOrder() μ ν΅ν΄ orderedMenuλΌλ λ©μμ§ μμ± for μμ²)
2. μ£Όλ¬Έ κ°μ²΄λ λ©μμ§λ₯Ό μ λ¬ λ°κ³ μμ μ μνλ₯Ό μ€μ€λ‘ λ³κ²½ν©λλ€.
(Order.createOrder(orderedMenu))
3. μ£Όλ¬Έ κ°μ²΄λ μμ μ λ³κ²½λ μνλ₯Ό ν΅ν΄ κ³ κ° κ°μ²΄μκ² λ©μμ§λ₯Ό μ λ¬ν¨μΌλ‘μ¨ μ£Όλ¬Έμ΄ μλ£λμμμ μ립λλ€.
customer.receiveFeedback(order.sendFeedback());
* λ©μμ§
μν μΊ‘μν
νμ€ μΈκ³μ κ°μ²΄μ μννΈμ¨μ΄ μΈκ³μ κ°μ²΄μ μ€μν μ°¨μ΄μ μ΄ νλ λ μμ΅λλ€. μ리μ€κ° λ§μλ μλ£λ₯Ό λ€μ ν λ² λΉλμ΄ λ³΄κ² μ΅λλ€.
νμ€ μΈκ³μμ μ¨λ¦¬μ€λ μ€μ€λ‘ μλ£λ₯Ό λ§μλ λ₯λμ μΈ μ‘΄μ¬μ§λ§ μλ£λ μ€μ€λ‘ μ무κ²λ ν μ μλ μλμ μΈ μ‘΄μ¬μ
λλ€.
But, μννΈμ¨μ΄ μΈκ³μ μλ£ κ°μ²΄λ μκΈ°κ° μ’ λ€λ¦
λλ€. κ°μ²΄μ§ν₯ μΈκ³μμ λͺ¨λ κ°μ²΄λ μμ μ μνλ₯Ό μ€μ€λ‘ κ΄λ¦¬νλ μμ¨μ μΈ μ‘΄μ¬λΌκ³ μΈκΈνλ―μ΄, μλ£ λν λ§μ°¬κ°μ§λ‘ μλ£ κ°μ²΄μ μμ μ€μ΄λ κ²μ μλ£ μμ μ΄μ΄μΌ νλ€λ κ²μ
λλ€.
λ€μλ§ν΄ νμ€μΈκ³μμ μλμ μΈ μ‘΄μ¬λ‘ 보μ΄λ κ°μ²΄λ μννΈμ¨μ΄ μΈκ³μμλ λ₯λμ μ΄λ©°, μμ¨μ μΈ μ‘΄μ¬λΌλ κ²μ΄μ£ .
λ°λΌμ μννΈμ¨μ΄ μΈκ³μμ μ리μ€λ μ§μ μ μΌλ‘ μλ£μ μνλ₯Ό λ³κ²½ν μ μκ³ , κ°μ μ μΌλ‘ μμ μ΄ μλ£λ₯Ό λ§μ
¨λ€λ μλ£ κ°μ²΄μκ² λ©μμ§λ₯Ό μ λ¬νκ³ , μλ£λ λ©μμ§λ₯Ό μ λ¬λ°μ μ€μ€λ‘μ μμ μ€μ΄λ λμμ ν¨μΌλ‘μ¨ μλ£μ μμ κ°μ μ μΌλ‘ μ€μΌ μ μμ΅λλ€.
κ°μ²΄μ νλμ μ λ°νλ κ²μ μΈλΆλ‘λΆν° μ λ¬λ λ©μμ§μ§λ§, κ°μ²΄μ μνλ₯Ό λ³κ²½ν μ§ μ¬λΆλ κ°μ²΄ μ€μ€λ‘ κ²°μ νλ€λ μ μ μΊ‘μνμ κΉμ κ΄λ ¨μ΄ μμ΅λλ€.
μ΄λ κ² μνλ₯Ό μΈλΆμ λ
ΈμΆμν€μ§ μκ³ νλμ κ²½κ³λ‘ μΊ‘μννλ κ²μ κ°μ²΄μ μμ¨μ±μ λμ¬ νλ ₯μ λ¨μνκ³ μ μ°νκ² λ§λλ κ³Όμ μ μΆλ°μ μ΄λΌκ³ λ³Ό μ μμ΅λλ€.
μλ³μμ κ΄νμ¬
λͺ¨λ κ°μ²΄λ κ°κ°μ ꡬλΆν μ μλ μλ³μλ₯Ό κ°μ§λλ€. (μ λ μ΄λ₯Ό κ°μ²΄μ μ£Όμκ° μλ³μλΌκ³ μ΄ν΄νμ΅λλ€)
λͺ¨λ κ°μ²΄κ° μλ³μλ₯Ό κ°μ§λ€λ κ²μ λ°λλ‘ κ°μ²΄κ° μλ λ¨μν κ°μ μλ³μλ₯Ό κ°μ§μ§ μλλ€λ κ²μ μλ―Έν©λλ€.
μ΄μ²λΌ κ°κ³Ό κ°μ²΄μ μ°¨μ΄μ μ λͺ
ννκ² κ΅¬λΆνκ³ λͺ
μμ μΌλ‘ νννλ κ²μ΄ μ€μνλ°, κ°κ³Ό κ°μ²΄κ° μ΄λ»κ² λ€λ₯Έμ§ μμΈν μμλ³΄κ² μ΅λλ€.
κ° (Value)
- κ°μ μ«μ, λ¬Έμμ΄, λ μ§, μκ°, κΈμ‘ λ±κ³Ό κ°μ΄ λ³νμ§ μλ μμ λͺ¨λΈλ§ν©λλ€.
- νν κ°μ μνλ λ³νμ§ μκΈ° λλ¬Έμ λΆλ³ μνλ₯Ό κ°μ§λ€κ³ λ§νλλ°, κ°μ κ²½μ°μλ λ μΈμ€ν΄μ€μ μνκ° κ°λ€λ©΄ λ μΈμ€ν΄μ€λ₯Ό κ°μ κ²μΌλ‘ νλ¨νλ€λ νΉμ§μ΄ μμ΅λλ€.
- κ°μ΄ κ°μμ§ μ¬λΆλ κ°μ μνκ° λ³νμ§ μλλ€λ μ μμ μνκ° κ°μ μ§μ μ¬λΆλ₯Ό μ΄μ©ν΄ νλ¨ν μ μμ΅λλ€.
- λλ±μ±(equality) : μνλ₯Ό μ΄μ©ν΄ λ κ°μ΄ κ°μμ§ νλ¨ν μ μλ€. eg) == μΌλ‘ λΉκ΅
κ°μ²΄ (Obejct)
- μλ³μλ₯Ό κ°μ§λ μ‘΄μ¬λ‘, μκ°μ λ°λΌ λ³κ²½λλ μνλ₯Ό ν¬ν¨ν©λλ€.
- νλμ ν΅ν΄ μνλ₯Ό λ³κ²½ν μ μκΈ° λλ¬Έμ κ°λ³μ μΈ μ‘΄μ¬λΌκ³ ν μ μμ΅λλ€.
- λν μλ³μλ₯Ό κ°μ§κΈ° λλ¬Έμ λ κ°μ²΄μ μνκ° κ°λ€κ³ ν΄μ λ κ°μ²΄λ₯Ό κ°λ€κ³ νλ¨ν μ μμ΅λλ€.
- μ€λ‘μ§ μλ³μλ₯Ό ν΅ν΄ λ κ°μ²΄κ° κ°μμ§ νλ¨νμ¬μΌ ν©λλ€.
- λμΌμ±(identical) : μλ³μ κΈ°λ°μΌλ‘ κ°μ²΄κ° κ°μμ§ νλ¨ κ°λ₯. eg) equals(), hashCode() method override
(μ 리ν΄λ ν·κ°λ¦¬λ λΆλΆλ€μ΄ μλλ°, κ·Έ μ΄μ λ μλ§λ κ°λ ν΄λμ€λ‘λΆν°, κ°μ²΄λ ν΄λμ€λ‘λΆν° μ¬μ©νλ νμΈ λ― ν©λλ€.)
μλ₯Όλ€λ©΄ μ«μλΌλ κ°λ IntergerλΌλ ν΄λμ€λ‘ μ μνκ³ , κ°μ²΄λ μλ₯Όλ€λ©΄ μ¬λμ Personμ΄λΌλ ν΄λμ€λ‘ μ μν μ λ°μ μλ..
μ΄λ° μ€ν΄μ μμ§λ₯Ό μ€μ΄κΈ° μν΄ μ°Έμ‘° κ°μ²΄, μν°ν°λ μλ³μλ₯Ό μ§λ κ°μ²΄λ‘, κ° κ°μ²΄λ μλ³μλ₯Ό κ°μ§μ§ μλ κ°μ κ°λ¦¬ν€λ μ©μ΄λ‘ μ¬μ©νλλ°, μ΄ μ±
μμλ λ³λμ μΈκΈμ΄ μλ ν κ°μ²΄λΌλ μ©μ΄λ μλ³μλ₯Ό κ°μ§λ μ°Έμ‘° κ°μ²΄λ μν°ν°λ₯Ό κ°λ¦¬ν¨λ€κ³ λͺ
μνμμ΅λλ€.
μ΄μ μ΄μν λλΌμ μλ¦¬μ€ μ΄μΌκΈ°λ λμμ£Όκ³ , μκΉ λ§ν μ리μ€μ νΉμ§μμ μ리μ€λ₯Ό κ°μ²΄λ‘ λ°κΎΈμ΄ κ°μ²΄μ νΉμ±μ μ΄ν΄νλλ‘ ν©μλ€.
- κ°μ²΄λ 'μν'λ₯Ό κ°μ§λ©° 'μν'λ λ³κ²½μ΄ κ°λ₯νλ€.
- κ°μ²΄μ μνλ₯Ό λ³κ²½νλ κ²μ κ°μ²΄μ νμ
- νμμ μμλ κ²°κ³Όμ μν₯μ λΌμΉλ€.
- κ°μ²΄μ μνκ° λ³κ²½λλλΌλ κ°μ²΄λ μ μΌνκ² μλ³ κ°λ₯ν μ‘΄μ¬μ΄λ€.
μ§κΈκΉμ§ κ°μ²΄μ μ€μν νΉμ±μΈ μν, νλ, μλ³μμ κ΄νμ¬ μ΄ν΄λ³΄μμ΅λλ€. μμ§ 2μ₯μ λ΄μ©μ΄ λλμ§λ μμμ§λ§ κΈμ΄ λ무 κΈΈμ΄μ Έ μ΄μ΄μ§λ 2μ₯ λ΄μ©μ λ€μ κΈλ‘ λΆλ¦¬νλλ‘ νκ² μ΅λλ€. μΆκ°λ‘ μ±
μ μ€μν¨μ κ°μ‘°νκΈ° μν΄ λ°λ³΅λλ λ΄μ©λ€μ΄ λ§μλ°, λ΄μ© μ 리μλ λκ°μ΄ μ μ©λλ€λ μ μ°Έκ³ ν΄μ£ΌμΈμ.
<μ°Έκ³ μλ£>
'π Backend > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
λΈλ‘κ·Έμ μ 보
Study Repository
rlaehddnd0422