π§© μ this()
μμ±μ 체μ΄λμ μ¬μ©νλκ°?
β ν μ€ μμ½
μ μ°ν κ°μ²΄ μμ± + μ½λ μ€λ³΅ μ κ±° + μ μ§λ³΄μ νΈμμ±
μ΄ μΈ κ°μ§λ₯Ό μν΄ μ΄λ° λ°©μλ€μ μλλ€.
π§© μ this()
μμ±μ 체μ΄λμ μ¬μ©νλκ°?
1οΈβ£ μ½λ μ€λ³΅ μ κ±°
class Student {
String name;
int score;
public Student() {
this.name = "μ΄λ¦ μμ";
this.score = 0;
}
public Student(String name) {
this.name = name;
this.score = 0;
}
public Student(String name, int score) {
this.name = name;
this.score = score;
}
}
β‘οΈ this.name = name;
, this.score = 0;
κ°μ μ€λ³΅ μ½λκ° λ°λ³΅λ¨
β μ΄λ₯Ό ν΄κ²°νκΈ° μν΄ κ³΅ν΅ λ‘μ§μ νλμ μμ±μλ‘ λͺ°κ³ , λλ¨Έμ§λ this()λ‘ νΈμΆν©λλ€.
class Student {
String name;
int score;
public Student() {
this("μ΄λ¦ μμ", 0);
}
public Student(String name) {
this(name, 0);
}
public Student(String name, int score) {
this.name = name;
this.score = score;
}
}
β‘οΈ μ€λ³΅ μ κ±° + μ μ§λ³΄μ κ°νΈ
2οΈβ£ λ€μν μ΄κΈ°ν λ°©μ μ 곡 (μ μ°μ±)
- μ¬μ©μλ
new Student()
λ,new Student("νκΈΈλ")
λ,new Student("νκΈΈλ", 100)
λ μΈ μ μμ - κ°λ°μκ° λ§€κ°λ³μ μ‘°ν©μ λ°λΌ κ°μ²΄ μμ± λ°©λ²μ λ€μνκ² μ νν μ μκ² λμμ€
β μ€λ¬΄μμλ "κΈ°λ³Έκ°μΌλ‘ μ΄κΈ°νλ κ°μ²΄", "λΆλΆλ§ μ€μ λ κ°μ²΄", "λͺ¨λ κ° μ§μ λ κ°μ²΄" λ± λ€μν μν©μ΄ μ‘΄μ¬
3οΈβ£ κΈ°λ³Έκ°μ μμ νκ² μ€μ ν μ μμ
new Student(); // "μ΄λ¦ μμ", 0
new Student("νκΈΈλ"); // "νκΈΈλ", 0
new Student("νκΈΈλ", 90); // "νκΈΈλ", 90
β‘οΈ μμ±μ 체μ΄λμ μ¬μ©νλ©΄,
"μ λ ₯ μ λ°μ νλͺ©μ κΈ°λ³Έκ°μΌλ‘ μλ μ€μ " κ°λ₯
→ κ°μ²΄ μμ± μ μ€μ μ€μ΄κ³ μμ μ± ↑
π§ μΈμ μ€λ¬΄μμ μ΄λ° κ΅¬μ‘°κ° μ μ©ν κΉ?
μν© | ν¨κ³Ό |
---|---|
JSON νμ± ν κ°μ²΄ μμ± μ | νλκ° λλ½λ μ μμ → κΈ°λ³Έκ° νμ |
ν μ€νΈ μ | κ°λ¨ν κ°μ²΄ μμ±μ΄ νμν¨ (new User() λ‘ μ΅μ μμ± κ°λ₯) |
μ¬μ©μ μ λ ₯μ΄ λ€μν λ | μ μ°ν μμ±μ μ€λ²λ‘λ© νμ |
λΌμ΄λΈλ¬λ¦¬/νλ μμν¬ μ¬μ© μ | κΈ°λ³Έ μμ±μ νμ (Spring , JPA , Jackson λ±) |
β μ 리
μ΄μ | μ€λͺ |
---|---|
μ½λ μ€λ³΅ μ κ±° | κ°μ μ΄κΈ°ν μ½λκ° μ¬λ¬ μμ±μμ νΌμ§λ κ² λ°©μ§ |
μ μ°ν μ΄κΈ°ν | μν©λ³λ‘ λ€μν λ°©λ²μΌλ‘ κ°μ²΄ μμ± κ°λ₯ |
κΈ°λ³Έκ° λ³΄μ₯ | μΌλΆ μ λ³΄λ§ μ 곡λμμ λλ μμ νκ² μμ± κ°λ₯ |
μ μ§λ³΄μ μ©μ΄ | μμ±μ νλλ§ κ³ μΉλ©΄ μ 체 λ‘μ§ λ°μλ¨ |
π ν μ€ μμ½ μ 리
this()μ μμ±μ μ€λ²λ‘λ©μ
κ°μ²΄λ₯Ό λ μ μ°νκ³ μμ νκ² μμ±νκ³ ,
μ½λ μ€λ³΅μ μ€μ΄κ³ , μ μ§λ³΄μλ₯Ό μ½κ² λ§λ€κΈ° μν κ°λ ₯ν λꡬμ λλ€.
λκΈ