κ°μ²΄λ₯Ό μμ±νλ€λ κ² = ν΄λΉ κ°μ²΄λ₯Ό ν λ©λͺ¨λ¦¬μ λ£κ³ κ·Έ μ£Όμκ°μ μ°Έμ‘°λ³μμ μ μ₯νλ κ²
ν΄λμ€λͺ μ°Έμ‘°_λ³μλͺ = new μμ±μ();
π μΈμ€ν΄μ€λ₯Ό μ°Έμ‘°νκΈ° μν μ°Έμ‘°λ³μ μ μΈνκ³ μΈμ€ν΄μ€ μμ± ν, κ°μ²΄μ μ£Όμλ₯Ό μ°Έμ‘° λ³μμ μ μ₯
μ°Έμ‘°λ³μλͺ
.νλλͺ
// νλκ° λΆλ¬μ€κΈ°
μ°Έμ‘°λ³μλͺ
.λ©μλλͺ
() // λ©μλ νΈμΆ
. (ν¬μΈνΈ μ°μ°μ)
- ν΅ν΄ μ£Όμκ°μ μ°Ύμκ° κ·Έ μμμλ κ°μ²΄μ μ κ·Όνλ€
- νλ
- ν΄λμ€ λ³μ
- μΈμ€ν΄μ€ λ³μ
- λ©μλ
- μ§μ λ³μ
- μμ±μ
- μ΄λν΄λμ€
(1) νλ
- ν΄λμ€μ μμ±μ λνλ΄λ λ³μ
EX. μλμ°¨μ μ, λ°ν΄ μ λ±μ λμμΈ
(2) λ©μλ
- ν΄λμ€μ κΈ°λ₯μ λνλ΄λ ν¨μ
EX. μλμ°¨μ κ°μνκΈ°, μ μ§νκΈ° λ±μ κΈ°λ₯
(3) μμ±μ
- ν΄λμ€μ κ°μ²΄λ₯Ό μμ±νλ μν
(ν΄λμ€μ μ΄λ¦μ΄ λμΌν¨ but, λ€μ μκ΄νΈκ° λΆμ)
(4) μ΄λ ν΄λμ€
- ν΄λμ€ λ΄λΆμ ν΄λμ€
(μμ±μλ₯Ό μ μΈνκ³ λλ¨Έμ§ 3κ°μ§ μμλ₯Ό ν΄λμ€μ λ©€λ²(member)λΌκ³ λΆλ¦)
static
μ μ¬μ©νμ¬ μΈμ€ν΄μ€κ° λͺκ°κ° μκΈ°λ νΉμ ν κ°μ 곡μ νλ κ²½μ° μ¬μ©ν΄λμ€μ΄λ¦.ν΄λμ€λ³μμ΄λ¦
νλ©΄ κ°λ₯ (μ μ λ©€λ²μ΄κΈ° λλ¬Έ)new μμ±μ()
λ₯Ό ν΅ν΄ μΈμ€ν΄μ€κ° μμ±λ μ΄νμ μμ± κ°λ₯βοΈ μ΄ λ³μλ€μ΄ μ μ₯λλ κ³³
β
1. ν λ©λͺ¨λ¦¬
- κ°μ²΄κ° μμ΄μ§μ§ μλ ν μ λ μμ λμ§ μλ λ©λͺ¨λ¦¬
- μ€νλ©λͺ¨λ¦¬
- νλμ μ¬μ©νμ§ μμΌλ©΄ κ°μλ¨Έμ (garbage collecter)μ΄ μλ μμ
βοΈ μμ μΈ λ³μμ μμ±μμ κ³Ό μλ©Έμμ
β
1. μΈμ€ν΄μ€λ³μ π κ°μ²΄ μμ± μ μμ± / GCκ° μμμ μλ©Έ
2. ν΄λμ€λ³μ π JVM λ‘λ μ μμ±, νλ‘κ·Έλ¨ μ’ λ£ μ μλ©Έ
3. μ§μλ³μ π λ°νμ λμ€ μμ±, λ©μλ μ’ λ£ μ μλ©Έ
π‘ μ¬κΈ°μ static μ΄λ?
ν΄λμ€λͺ
.λ³μλͺ
μ μμ±νλ©΄ μΆλ ₯λ¨μλ°μ μ΄μ λ°ννμ λ©μλλͺ (λ§€κ° λ³μ) { // λ©μλ μκ·Έλμ² λ©μλ λ΄μ© // λ©μλ λ°λ }
μλ°μ μ΄μ λ°ννμ
λ©μλλͺ
(λ§€κ° λ³μ)
(λ©μλ μκ·Έλμ²) - μ΄ λ©μλκ° μ΄λ€ νμ
μ λ°ννκ³ λ©μλ μ΄λ¦μ΄ 무μμ΄λ©°, ν΄λΉ μμ
μ μννκΈ° μν΄μ μ΄λ€ μ¬λ£λ€μ΄ νμνμ§(λ§€κ° λ³μ)μ λν μ 보
βοΈ λ©μλμ λ°ννμ μ void λλ μλ£νλ§ κ°λ₯
β
π voidμΈ κ²½μ° λ°ν κ°μ΄ μκΈ° λλ¬Έμ System.out.println();μΌλ‘ κ·Έλ₯ μ¨μλ κ° μΆλ ₯
π μλ£νμΈ κ²½μ° λ°λμ λ©μλ λ°λ({} )μμ λ°λμ return λ¬Έμ λ£μ΄ μν κ²°κ³Όκ°μ νΈμΆν λ©μλλ‘ μ λ¬ν΄μΌν¨
β
(μ¬κΈ°μ κ²°κ³Όκ°μ λ°λμ λ°ννμ κ³Ό μΌμΉνκ±°λ μλ νλ³νμ΄ κ°λ₯ν κ²μ΄μ΄μΌ ν¨)
βοΈ μΈμ(argument)
λλ μ΄λ° μμλ€μ 보며 μ§μ intellijμ λ°λΌν΄λ³΄μλ€ !
μΈμ€ν΄μ€λ μμ±νκ³ ν΄λμ€λ μμ±νμ¬ μΆλ ₯κΉμ§ μμ± !
μ²μ κ°λ μ λ°°μΈ λλ κ°κ°μ κ°λ μ μ΄ν΄λ₯Ό νκ² λλ° κ·Έλμ μ΄κ² λ¬΄μ¨ κ΄κ³κ³ μ΄λμ μ°μ΄λ κ±΄μ§ μ΄ν΄κ° μ μκ°λλ° μ§μ ν΄λ³΄λ©΄μλ μ΄ν΄νκ³ μ€ μΈμ μμ μ€λͺ ν΄μ£Όμλ κ² λ£κ³ λ λ§μ΄ μ΄ν΄νλ€! μμ§ κΈ°μ΄μ΄μ§λ§ κ·Έλλ ν° ν μ λλ μ΄ν΄λ₯Ό ν λ―! μ¬νκ° μ¬μ€ μ‘°κΈ κ±±μ μ΄ λκΈ΄ νμ§λ§ μ£Όλ§λμ 빑곡 ν΄μΌκ² λ€ γ γ