static ν€μλ
Static, μ μ , κ·Έκ² λλ°?
Static ν€μλ
Javaμμ staticμ μ¬μ©μ νλ‘κ·Έλ¨ μμλΆν° μ’ λ£ μ κΉμ§ λ©λͺ¨λ¦¬κ° ν λΉλμ΄ μλ€.
μΌλ°μ μΌλ‘ μ°λ¦¬κ° λ§λ Classλ Static μμμ μμ±λκ³ , new μ°μ°μ ν΅ν΄ μμ±ν κ°μ²΄λ Heapμμμ μμ±λ©λλ€. κ°μ²΄μ μμ±μμ ν λΉλ Heapμμμ λ©λͺ¨λ¦¬λ Garbage Collectorλ₯Ό ν΅ν΄ μμλ‘ κ΄λ¦¬λ₯Ό λ°μ΅λλ€. νμ§λ§ Static ν€μλλ₯Ό ν΅ν΄ Static μμμ ν λΉλ λ©λͺ¨λ¦¬λ λͺ¨λ κ°μ²΄κ° 곡μ νλ λ©λͺ¨λ¦¬λΌλ μ₯μ μ μ§λμ§λ§, Garbage Collectorμ κ΄λ¦¬ μμ λ°μ μ‘΄μ¬νλ―λ‘ Staticμ μμ£Ό μ¬μ©νλ©΄ νλ‘κ·Έλ¨μ μ’ λ£μκΉμ§ λ©λͺ¨λ¦¬κ° ν λΉλ μ±λ‘ μ‘΄μ¬νλ―λ‘ μμ£Ό μ¬μ©νκ² λλ©΄ μμ€ν μ νΌν¬λ¨Όμ€μ μ μν₯μ μ£Όκ² λ©λλ€.
staticμ ν΄λμ€μμ 곡μ λλ λ³μλ λ©μλλ₯Ό μ μν λ μ¬μ©λλ€.
ν΄λμ€ λ³μ
ν΄λμ€ λ©μλ
μ μ λ©€λ²
ν΄λμ€ λ³μ
static ν€μλλ₯Ό μ¬μ©ν΄ μ μΈν ν΄λμ€ λ³μλ ν΄λμ€μ λͺ¨λ μΈμ€ν΄μ€κ° 곡μ νλ λ³μμ΄λ€. λ°λΌμ ν΄λμ€ λ³μλ μΈμ€ν΄μ€λ₯Ό μμ±νμ§ μκ³ λ μ κ·Όμ΄ κ°λ₯νλ€.
static λ³μλ μλ‘ λ€λ₯Έ μΈμ€ν΄μ€μμ 곡μ λ©λͺ¨λ¦¬λ‘ μ¬μ©λλ€.
ν΄λμ€ λ©μλ
static ν€μλλ₯Ό μ¬μ©ν΄ μ μΈν λ©μλλ₯Ό ν΄λμ€ λ©μλλΌκ³ νλ€. ν΄λμ€μ μΈμ€ν΄μ€λ₯Ό μμ±νμ§ μκ³ λ νΈμΆμ΄ κ°λ₯νλ€. (ν΄λμ€.λ©μλμ΄λ¦ μΌλ‘ νΈμΆνλ€.)
λ,
static λ©μλμμμλ μΈμ€ν΄μ€ λ³μμ μ κ·Όμ΄ λΆκ°λ₯νλ€.static λ©μλμμμλstatic λ³μλ§ μ κ·Όμ΄ κ°λ₯νλ€.
μ μ λ©€λ²
μμμ μμλ³Έ ν΄λμ€ λ³μμ ν΄λμ€ λ©μλλ₯Ό λͺ¨λ μ μ λ©€λ²λΌκ³ μΉνλ€. μ μ λ©€λ²λ ν΄λμ€μ μΈμ€ν΄μ€λ₯Ό μμ±νμ§ μκ³ μ κ·Όμ΄ κ°λ₯νλ€. μ΄λ¬ν μ μ λ©€λ²λ μ μ νκ² μ¬μ©νλ©΄ μ½λμ κ°λ μ±κ³Ό μ μ§λ³΄μμ±μ ν₯μμν¬ μ μμ§λ§ λ°λλ‘ μλͺ» μ¬μ©νλ©΄ λ¨μ΄μ§κ² λμλ€.
μΈμ μ¬μ©ν΄μΌ ν κΉ?
곡μ λ°μ΄ν°
μΈμ€ν΄μ€κ° μ€μ κ°, μμ λ±μ 곡μ ν λ
λ©λͺ¨λ¦¬ ν¨μ¨
static νλλ μ¬λ¬ κ°μ²΄λ₯Ό μμ±νλ κ°μ λ°μ΄ν°λ₯Ό μ¬μμ±νμ§ μμ λ©λͺ¨λ¦¬λ₯Ό μ μ½ν μ μλ€.
μμ
static final ν€μλλ‘ μμλ₯Ό μ μν λ μ¬μ©ν μ μμΌλ©° μ΄λ λ§€μ§ λλ²μ κ°μ νλ μ½λ©μ νΌν μ μλ€.
μ μ ν©ν 리 λ©μλ
ν΄λμ€μ μμ±μλ₯Ό μ¨κΈ°κ³ ,
staticμ μ¬μ©ν΄ ν©ν 리 λ©μλλ₯Ό μ¬μ©ν μ μλ€. μ΄λ κ°μ²΄ μμ± λ°©μμ μ μ΄νλ©΄μ μ μ°μ±μ λμΌ μ μλ€.
μ₯μ
μ½λ κ°κ²°
μΈμ€ν΄μ€λ₯Ό
newν€μλλ‘ μμ±ν νμ μμ΄ λ°λ‘ νΈμΆμ΄ κ°λ₯νκΈ° λλ¬Έμ κ°κ²°ν΄μ§λ€.
GC μ€λ²ν€λλ₯Ό μ€μ¬μ€ μ μλ€.λ§μ½ μλ§μ κ°μ²΄μμ λμΌν λ©μλλ₯Ό μ μμ΄ νΈμΆνλ κ²½μ°κ° μλ€. κ°μ²΄λ₯Ό μμ±νλ©΄μ
Heap μμμ λ©λͺ¨λ¦¬κ° μ¬λΌκ°κ³ , μ¬μ©μ΄ λλλ©΄ ν΄μ λλ€. μ΄ λμμ μ μμ΄ λ°λ³΅νλ€λ©΄GCμ μ€λ²ν€λκ° λ°μν μ μλ€.
λ¨μ
μμκ³Ό μ€λ²λΌμ΄λ© μ μ½
μ μ λ©μλλ
μ€λ²λΌμ΄λ©μ΄ λΆκ°λ₯νλ€. κ°μ²΄ μ§ν₯ μ€κ³μ μ₯μ μ€ νλλμμκ³Όλ€νμ±μ μ¬μ©ν΄μ μ½λλ₯Ό νμ₯μν€λ κ²μ΄λ€. -> OOP μμΉμ μλ°ν μ μκ³ , μΈν°νμ΄μ€ ꡬνμ μ¬μ©ν μ μμ΄ μ μ°μ±μ΄ λ¨μ΄μ§ μ μλ€.
μμ‘΄μ±
μ μ λ©μλλ₯Ό νΈμΆν λ, ν΄λΉ λ©μλκ° μ¬μ©νλ μΈλΆ 리μμ€μ μμ‘΄μ±μ΄ κ°ν΄μ§ μ μλ€.
λ©λͺ¨λ¦¬ λλΉ
νλ‘κ·Έλ¨ μ’ λ£κΉμ§ λ©λͺ¨λ¦¬μ λ¨μμμ΄ κ³Όλν μ¬μ© μ λλΉλ‘ μ΄μ΄μ§ μ μλ€.
ν μ€νΈ
static λ©μλλ ν΄λμ€ λ 벨μμ μ€νλκΈ° λλ¬Έμ λͺ© κ°μ²΄λ μ€ν μ μ μ©νκΈ° μ΄λ €μΈ μ μλ€. κ·Έλμ μ μ λ©μλλ₯Ό μ¬μ©νλ μ½λμ λ¨μ ν μ€νΈμ μ΄λ €μμ κ²ͺμ μ μλ€.
μΈμ μ¬μ©?
μΈμ€ν΄μ€μ 곡ν΅μ μΌλ‘ μ¬μ©λλ λ³μλ λ©μλκ° μ‘΄μ¬ν λ μ¬μ©νλ€. μλ₯Όλ€μ΄,
ClothesλΌλ ν΄λμ€κ° μκ³ , λΈλλλ₯Ό νμν΄ μ€μΌνλ κ²½μ°λΌκ³ μκ°νλ€.
staitc λ©μλμ¬μ©μ κ³ λ €ν λ, μΈμ€ν΄μ€ λ³μλ₯Ό κ·Έ μμμ μ¬μ©νλμ§ νλ¨ν΄μΌνλ€.
λ€λ₯Έ λ§λ‘λ, λ©μλ μμμ μΈμ€ν΄μ€ λ³μλ₯Ό μ¬μ©νμ§ μλλ€λ©΄
staticμ λΆμ΄λ κ²μ κ³ λ €νλ€.
μλΏλ λ΄μ©λ€λ μμ§λ§ κ·Έλ μ§ μμ λ΄μ©λ€λ μλ€. κ²½νμ ν΅ν΄μ μμκ°μΌ κ² λ€.
Last updated

