[μ€λΈμ νΈ] 4μ₯ 'μ€κ³ νμ§κ³Ό νΈλ μ΄λμ€ν'
4μ₯μμλ μν μλ§€ μμ€ν μ μ μ°¨μ νλ‘κ·Έλλ°(λ°μ΄ν° μ€μ¬)μΌλ‘ ꡬννκ³ μΊ‘μν, μμ§λ, κ²°ν©λλ‘ μ½λλ₯Ό νκ°ν΄ λ³Έλ€.
2μ₯ μ½λκ° μ΄λ €μμ 4μ₯λ 미리 κ²λ¨Ήμλλ° μκ°λ³΄λ€ μ΄ν΄νκΈ° μ¬μ λ€. νμ€ν λΉκ΅ν΄μ 보λκΉ μ κ°μ²΄μ§ν₯μ μΌλ‘ μ½λλ₯Ό μμ±ν΄μΌ νλμ§ μ μ μμλ€.
μ§μ ν μΊ‘μνλ?
λ¨μν μΈμ€ν΄μ€ λ³μλ₯Ό privateλ‘ λ³κ²½νκ³ ν΄λΉ λ°μ΄ν°λ₯Ό λ³κ²½ν μ μλλ‘ public κ²ν°/μΈν°λ₯Ό λ§λ€μ΄ λλ건 μ§μ ν μλ―Έμ μΊ‘μνλ μλλ€. μΊ‘μνλ λ³κ²½λ μ μλ μ΄λ€ κ²μ΄λΌλ κ°μΆλ κ²μ΄κ³ , λ΄λΆ μμ±μ μΈλΆλ‘λΆν° κ°μΆλ κ²μ 'λ°μ΄ν° μΊ‘μν'μ΄λ€. νμ§λ§ μ± μμ μ€λͺ νλ―μ΄ μΈλΆμμ μ κ·Όν μ μλ λ©μλλ₯Ό ν΅ν΄ κ°μ²΄κ° κ°μ§κ³ μλ λ΄λΆ μμ±μ μ μ μλ€λ 건 λ΄λΆ ꡬνμ λ³κ²½ν κ²½μ°, μ΄ λ©μλλ₯Ό μμ‘΄νκ³ μλ λͺ¨λ ν΄λΌμ΄μΈνΈλ μν₯μ λ°λλ€λ κ²μ μλ―Ένλ€. λ°λΌμ μ°λ¦¬λ μ€κ³μμ λ³νλ κ²μ΄ 무μμΈμ§ κ³ λ €νκ³ λ³νλ κ°λ μ μΊ‘μνν΄μΌ νλ€(p.128)
λ°μ΄ν° μ€μ¬ μ€κ³μ λ¬Έμ μ μ 무μμΌκΉ?
- νλλ³΄λ€ μνμ μ΄μ μ λ§μΆλ€
- κ°μ²΄λ₯Ό κ³ λ¦½μν¨ μ± μ€νΌλ μ΄μ μ μ μνλλ‘ νλ€ -> κ°μ²΄κ° λ€λ₯Έ κ°μ²΄μ μ΄λ»κ² νλ ₯νλμ§μ λν κ³ λ―Ό μμ΄ κ°μ²΄κ° κ΄λ¦¬ν λ°μ΄ν°μ μΈλΆ μ 보λ₯Ό 미리 κ²°μ ν΄ λκΈ° λλ¬Έμ λμ€μ κ°μ²΄λ€μ΄ νλ ₯ν λ μ΄λ―Έ ꡬνλ κ°μ²΄μ μΈν°νμ΄μ€λ₯Ό μ¨μΌ νλ€.
μ€ν°λμμ 2μ₯ μ½λλ₯Ό 곡λΆν μμ μ΄λΌ μ½λμ μ£Όμμ λ¬μλμλλ°, μ΄λ κ² νλ κ²μ΄ λ§λμ§ λͺ¨λ₯΄κ² μ΄μ μμ€μ½λ λΆμ λ°©λ²μ μ°Ύμ보μλ€.
μ°μ νμ€νμ€ μ£Όμ λ€λ건 μλ κ² κ°κ³ λ³ΈμΈ μ»΄ν¨ν°μ λΉλ λ° μ€ν νκ²½μ ꡬμΆν΄μ λΆμμ νμν λ‘κ·Έλ₯Ό μΆκ°νμ¬ μ¬ μ»΄νμΌν ν μ€ννλ©΄μ λ‘κ·Έλ₯Ό νμΈνλΌ... μ΄κ±΄ λ©μΈ λ©μλκ° μμ΄μ κ°λ₯νκ°?
μ§λ¬Έμ λ§μ΄ νλ κ². μλ₯Ό λ€μ΄ 'λλΌλ©΄ μ΄λ»κ² κ°λ°νμμ§' κ³ λ―Όν΄ λ³΄κΈ°. UML, PPT λ±μΌλ‘ λ¬ΈμννκΈ°.
Log levelμ λλ²κ·Έλ‘ μ€μ νκ³ λλ²κ±°μ breakpoint νμ©. (μ€ν λ¨μλ‘ μ€ννλ©΄μ κ° λ³μμ λ³ν μν νμΈ)
Thread.dumpStack()λ₯Ό μΆκ°νμ¬ μ 체 νΈμΆ νλ¦ λ° μ€μ λ°μΈλ© λλ ν΄λμ€ νμΈ. λμμΈ ν¨ν΄ 곡λΆ.
Thread.dumpStack()
- νμ¬ μ½μ€νμ μΆλ ₯(output)ν¨. exception stack traceμ²λΌ. μ½λλ₯Ό λλ¦¬κ² νκΈ° λλ¬Έμ λλ²κΉ ν λλ§ μ¬μ©ν΄μΌ ν¨
μ°Έκ³ μ¬μ΄νΈ
https://www.facebook.com/218158748272233/posts/758498224238280/