[Java] thisμ this()μ λν΄
by rlaehddnd0422μλ°μλ thisμ this() ν€μλκ° μμ΅λλ€. μ΄ λ ν€μλλ λͺ¨μμλ λΉμ·νμ§λ§ μ ν λ€λ₯Έ μ©λλ₯Ό κ°μ§κ³ μμ΅λλ€.
thisμ this()λ₯Ό μ΄λ»κ² μ¬μ©νκ³ μ΄ λ κ°μ§ ν€μλκ° μ΄λ»κ² λ€λ₯Έμ§ μ§§κ³ κ°κ²°νκ² μμλ΄ μλ€.
1. this, this()μ μ°¨μ΄
- thisλ κ°μ²΄ μμ μ κ°λ¦¬ν€λ reference λ³μλ‘, μμ μ κ°μ²΄μ μ κ·Όν λ μ¬μ©ν©λλ€.
- μ£Όλ‘ λ©€λ²λ³μμ 맀κ°λ³μμ μ΄λ¦μ΄ λμΌν λ μ΄λ₯Ό ꡬλΆνκΈ° μν΄ μ¬μ©λλ ν€μλμ λλ€.
- this()λ κ°μ ν΄λμ€μμ μμ±μκ° λ€λ₯Έ μμ±μλ₯Ό νΈμΆν λ μ¬μ©ν©λλ€.
- μ£Όλ‘ μ½λμ μ€λ³΅μ λ§κΈ° μν λͺ©μ μΌλ‘ μ¬μ©
- this()λ μμ±μ μ½λμλ§ μ¬μ©ν μ μμ΅λλ€.
- this() λ©μλμ μΈμλ₯Ό μ λ¬νλ©΄ μμ±μ μ€μμ λ©μλμ μνμ λͺ μλλ 맀κ°λ³μ 리μ€νΈλ₯Ό κ°λ μμ±μ λ©μλλ₯Ό νΈμΆν©λλ€.
μ¬μ© μμμ½λλ₯Ό μ΄ν΄λ΄ μλ€.
public class Book {
private String title;
private int price;
public Book(String title, int price) {
this.title = title;
this.price = price;
}
public Book(String title) {
this(title, 0);
}
}
μμ μ½λμ Book ν΄λμ€μμ 첫λ²μ§Έ μμ±μ μ½λλ₯Ό 보면 this μ°Έμ‘° λ³μλ₯Ό μ¬μ©ν΄μ μΈμ€ν΄μ€ λ³μμ μ κ·Όνκ³ μμ΅λλ€.
public Book(String title, int price) {
this.title = title;
this.price = price;
}
λ λ²μ§Έ μμ±μ μ½λλ₯Ό μ΄ν΄λ³΄λ©΄ λ΄λΆμμ this()λ©μλλ₯Ό μ΄μ©νμ¬ μ²« λ²μ§Έ μμ±μλ₯Ό νΈμΆνμ¬ μΈμ€ν΄μ€ λ³μλ₯Ό μ΄κΈ°ννκ³ μμ΅λλ€.
public Book(String title) {
this(title, 0);
}
μ£Όμ ν μ : ν μμ±μμμ λ€λ₯Έ μμ±μλ₯Ό νΈμΆν λμλ λ°λμ ν΄λΉ μμ±μμ 첫 μ€μμλ§ νΈμΆν μ μμ΅λλ€.
this()λ₯Ό μ¬μ©ν¨μΌλ‘μ¨ String title νλλ§ κ°μ§κ³ μμ±μλ₯Ό νΈμΆν΄λ μΈμ€ν΄μ€ λ³μ priceκ° 0μΌλ‘ μ΄κΈ°νλλ ν¨κ³Όλ₯Ό μ»μ μ μμμ΅λλ€. μλ μ½λμ λμΌν λμμ νμ§λ§, this()λ₯Ό μ¬μ©νμ¬ this.title = ~, this.price = ~μ κ°μ μ½λμ μ€λ³΅μ μ€μ΄κ³ μ’ λ μ½λλ₯Ό κ°κ²°νκ² κ΅¬μ±ν μ μλ€λ μ₯μ μ λ³Ό μ μμ΅λλ€.
public Book(String title) {
this.title = title;
this.price = 0;
// this(title, 0);
}
<μ°Έκ³ μλ£>
'π Backend > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] μΆμ ν΄λμ€(abstract class)μ λν΄ (2) | 2023.09.26 |
---|---|
[Java] μ κ·Ό μ μ΄μ(public, protected, default, private)μ λν΄ (0) | 2023.09.25 |
[Java] static variable, static methodμ λν΄ (0) | 2023.09.22 |
[Java] κ°μ²΄(Object)μ ν΄λμ€(Class)μ λν΄ (0) | 2023.09.22 |
[Java] PSμμ μμ£Ό μ¬μ©νλ μ λ ₯ ν΄λμ€μ λν΄ (0) | 2023.09.21 |
λΈλ‘κ·Έμ μ 보
Study Repository
rlaehddnd0422