λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ–₯️ λ°±μ—”λ“œ/Java

[ch.14] λžŒλ‹€μ‹

by OR15A 2023. 11. 15.

λžŒλ‹€μ‹

  • λ©”μ„œλ“œλ₯Ό κ΅¬ν˜„ν•˜λŠ” μ½”λ“œ 블둝 자체λ₯Ό 전달함.
  • ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ°κ°œλ…μ„ μ μš©ν•œ 것.
  • λžŒλ‹€μ‹μœΌλ‘œ ν•¨μˆ˜ν˜• μΈν„°νŽ˜μ΄μŠ€λ₯Ό 더 κ°„κ²°ν•˜κ²Œ κ΅¬ν˜„ν•  수 있음.

 

ν•¨μˆ˜ν˜• μΈν„°νŽ˜μ΄μŠ€

  • λžŒλ‹€μ‹μ„ 닀루기 μœ„ν•œ μΈν„°νŽ˜μ΄μŠ€.
  • 였직 ν•˜λ‚˜μ˜ μΆ”μƒλ©”μ„œλ“œλ§Œ μ •μ˜λ˜μ–΄μžˆμ–΄μ•Όν•¨(μ œμ•½)
  • κ·Έλž˜μ•Ό λžŒλ‹€μ‹κ³Ό μΈν„°νŽ˜μ΄μŠ€μ˜ λ©”μ„œλ“œκ°€ 1:1μ—°κ²°.
  • staticλ©”μ„œλ“œμ™€ defaultλ©”μ„œλ“œλŠ” 개수 μ œμ•½X

 

읡λͺ…객체λ₯Ό λžŒλ‹€μ‹μœΌλ‘œ λŒ€μ²΄ κ°€λŠ₯ν•œ 이유

  • λžŒλ‹€μ‹μ€ μ‹€μ œλ‘œ 읡λͺ… κ°μ²΄μž„.
  • ν•¨μˆ˜ν˜• μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•œ 읡λͺ…κ°μ²΄μ˜ λ©”μ„œλ“œμ™€ λžŒλ‹€μ‹μ˜ λ§€κ°œλ³€μˆ˜ νƒ€μž…κ³Ό 개수, λ°˜ν™˜κ°’μ΄ μΌμΉ˜ν•΄μ„œ.

 

λ©”μ„œλ“œ μ°Έμ‘°

  • 이미 κ΅¬ν˜„λœ λ©”μ„œλ“œλ₯Ό μ°Έμ‘°ν•˜μ—¬ μ‚¬μš©ν•¨.
  • μ½”λ“œ 쀑볡 방지. 가독성↑, μ½”λ“œμ˜ κ°„κ²°ν•œ μž‘μ„±.
  • 효율적인 데이터 μ²˜λ¦¬κ°€ κ°€λŠ₯함.

 

λžŒλ‹€μ‹μ„ ν˜ΈμΆœν•˜λŠ” μ°Έμ‘°λ³€μˆ˜ f의 νƒ€μž…

  • λžŒλ‹€μ‹κ³Ό λ™λ“±ν•œ λ©”μ„œλ“œκ°€ μ •μ˜λœ 클래슀
  • λžŒλ‹€μ‹κ³Ό λ™λ“±ν•œ λ©”μ„œλ“œκ°€ μ •μ˜λœ μΈν„°νŽ˜μ΄μŠ€ (λ¬Όλ‘  참쑰만 ν•˜λŠ”κ±°μ§€ λžŒλ‹€μ‹ ≠ μΈν„°νŽ˜μ΄μŠ€νƒ€μž…)

 

 

λžŒλ‹€μ‹μ˜ νƒ€μž…κ³Ό ν˜•λ³€ν™˜

  • λžŒλ‹€μ‹=읡λͺ…객체 (νƒ€μž…X μ•Œ 수 μ—†μŒ)
  • λŒ€μž…μ—°μ‚°μž(=) μ‚¬μš©μ‹œ μ–‘λ³€μ˜ νƒ€μž…μ„ μΌμΉ˜μ‹œν‚€κΈ° μœ„ν•΄μ„œ ν˜•λ³€ν™˜μ΄ ν•„μš”ν•¨.

 

μ™ΈλΆ€λ³€μˆ˜λ₯Ό μ°Έμ‘°ν•˜λŠ” λžŒλ‹€μ‹

  • λžŒλ‹€μ‹λ„ 읡λͺ…ν΄λž˜μŠ€μ˜ μΈμŠ€ν„΄μŠ€μ΄λ―€λ‘œ, μ™ΈλΆ€μ— μ„ μ–Έλœ λ³€μˆ˜ μ ‘κ·Ό κ·œμΉ™λ„ 읡λͺ…ν΄λž˜μŠ€ κ·œμΉ™κ³Ό λ™μΌν•¨.
  • λžŒλ‹€μ‹ λ‚΄μ—μ„œ μ°Έμ‘°ν•˜λŠ” μ§€μ—­λ³€μˆ˜λŠ” final μ•ˆλΆ™μ—¬λ„ μƒμˆ˜λ‘œ 간주됨.
  • 외뢀지역과 같은 μ΄λ¦„μ˜ λžŒλ‹€μ‹ λ§€κ°œλ³€μˆ˜λŠ” ν—ˆμš©λ˜μ§€ μ•ŠμŒ.

 

λžŒλ‹€μ‹μ΄ ν•˜λ‚˜μ˜ λ©”μ„œλ“œλ§Œ ν˜ΈμΆœν•˜λŠ” κ²½μš°μ—λŠ”

  • ‘λ©”μ„œλ“œ μ°Έμ‘°’λΌλŠ” 방법을 λžŒλ‹€μ‹μ„ κ°„λž΅ν•˜κ²Œ ν•  수 있음.
  • β‘ ν΄λž˜μŠ€μ΄λ¦„ :: λ©”μ„œλ“œμ΄λ¦„ (λ©”μ„œλ“œ 이름이 λ‹€λ₯Έ ν΄λž˜μŠ€μ— μžˆμ„ 수 μžˆμœΌλ‹ˆκΉŒ)
  • β‘‘μ°Έμ‘°λ³€μˆ˜ :: λ©”μ„œλ“œμ΄λ¦„  (이미 μƒμ„±λœκ°μ²΄μ˜ λ©”μ„œλ“œλ₯Ό λžŒλ‹€μ‹μ—μ„œ μ‚¬μš©ν•  λ•Œ)

 

 

μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›Œν¬μ— μΆ”κ°€λœ λ””ν΄νŠΈλ©”μ„œλ“œλ“€