상속

 

μƒμ†μ΄λž€

- 객체 지ν–₯ ν”„λ‘œκ·Έλž¨μ—μ„œ λΆ€λͺ¨ 클래슀의 ν•„λ“œμ™€ λ©”μ„œλ“œλ₯Ό μžμ‹μ—κ²Œ λ¬Όλ €μ£ΌλŠ” ν–‰μœ„

 

상속을 μ“°λŠ” 이유 

- λΆ€λͺ¨ 클래슀λ₯Ό ν†΅ν•΄μ„œ μƒˆλ‘œμš΄ 클래슀λ₯Ό λ§Œλ“€κΈ° λ•Œλ¬Έμ— λΆˆν•„μš”ν•œ μ½”λ“œ 쀑볡을 쀄일 수 μžˆλ‹€.

- λΆ€λͺ¨ 클래슀만 μˆ˜μ •ν•˜λ©΄ λ˜λ―€λ‘œ μˆ˜μ •μ‹œ μž‘μ—…μ„ μ΅œμ†Œν™” ν•  수 μžˆλ‹€.

 

클래슀 상속 

- μžμ‹ ν΄λž˜μŠ€λŠ” 상속받을 λΆ€λͺ¨ 클래슀λ₯Ό κ²°μ •ν•œλ‹€.

- μ—¬λŸ¬ λΆ€λͺ¨ ν΄λž˜μŠ€μ—κ²Œμ„œ 상속 받을 수 μ—†λ‹€.

 

λΆ€λͺ¨ μƒμ„±μž 호좜

- 객체λ₯Ό μƒμ„±ν•˜λ©΄ λΆ€λͺ¨ 객체가 λ¨Όμ € μƒμ„±λœλ‹€.

    - super() λ©”μ„œλ“œκ°€ 컴파일 κ³Όμ •μ—μ„œ μžλ™μœΌλ‘œ μΆ”κ°€λœλ‹€.  

    - super() λ©”μ„œλ“œλŠ” κΈ°λ³Έμƒμ„±μžλ₯Ό ν˜ΈμΆœν• μˆ˜λ„ 있고, λ§€κ°œλ³€μˆ˜λ₯Ό λ„£μ„μˆ˜λ„ μžˆλ‹€.

    - super.λ©”μ†Œλ“œ() λ₯Ό μ‚¬μš©ν•˜λ©΄ μžμ‹ ν΄λž˜μŠ€μ—μ„œ λΆ€λͺ¨ 클래슀의 λ©”μ†Œλ“œλ₯Ό μ‚¬μš©ν•  수 μžˆλ‹€.

 

 

λ©”μ†Œλ“œ μ˜€λ²„λΌμ΄λ”© 

- λΆ€λͺ¨ 클래슀의 λ©”μ†Œλ“œλ₯Ό μžμ‹ ν΄λž˜μŠ€μ—μ„œ μž¬μ •μ˜ν•˜μ—¬ μ‚¬μš©ν•  수 μžˆλ‹€.

- λ©”μ„œλ“œλ₯Ό μ˜€λ²„λΌμ΄λ”©ν•˜λ©΄ ν•΄λ‹Ή λΆ€λͺ¨ ν΄λž˜μŠ€λŠ” μˆ¨κ²¨μ§€κ³  μžμ‹ 클래슀λ₯Ό μš°μ„ μ μœΌλ‘œ μ‚¬μš©ν•œλ‹€.

- @Override μ–΄λ…Έν…Œμ΄μ…˜μ„ 뢙이면 컴파일 μ‹œ μ˜€λ²„λΌμ΄λ”©μ΄ λ˜μ—ˆλŠ” 지 체크가 κ°€λŠ₯ν•˜λ‹€.

 

λ©”μ†Œλ“œ μ˜€λ²„λΌμ΄λ”© μ‹œ μ£Όμ˜μ‚¬ν•­

- λΆ€λͺ¨ λ©”μ†Œλ“œμ˜ 선언뢀와 λ™μΌν•΄μ•Όν•œλ‹€.

- μ ‘κ·Ό μ œν•œμ„ 더 κ°•ν•˜κ²Œ μ˜€λ²„λΌμ΄λ”©ν•  수 μ—†λ‹€.

- μƒˆλ‘œμš΄ μ˜ˆμ™Έλ₯Ό throwν•  수 μ—†λ‹€.

 

final ν΄λž˜μŠ€μ™€ final λ©”μ†Œλ“œ

- fianl ν΄λž˜μŠ€λŠ” 더 이상 상속될 수 μ—†λ‹€.

- final λ©”μ†Œλ“œλŠ” μ˜€λ²„λΌμ΄λ”© 될 수 μ—†λ‹€.

 

νƒ€μž…λ³€ν™˜

μžλ™ νƒ€μž… λ³€ν™˜ 

- μžλ™μ μœΌλ‘œ μΌμ–΄λ‚˜λŠ” νƒ€μž… λ³€ν™˜

- λΆ€λͺ¨νƒ€μž… λ³€μˆ˜μ— μžμ‹νƒ€μž… 객체λ₯Ό λŒ€μž…ν•  λ•Œ μΌμ–΄λ‚œλ‹€.

- λ°”λ‘œ μœ„μ˜ λΆ€λͺ¨κ°€ μ•„λ‹ˆλ”λΌλ„ 같은 상속 νƒ€μž…μ΄λΌλ©΄ μžλ™ νƒ€μž… λ³€ν™˜ κ°€λŠ₯

- μžλ™ νƒ€μž… λ³€ν™˜ 된 μ΄ν›„μ—λŠ” λΆ€λͺ¨ ν΄λž˜μŠ€μ— μ„ μ–Έλœν•„λ“œμ™€ λ©”μ†Œλ“œλ§Œ μ ‘κ·Ό κ°€λŠ₯

   - μ˜€λ²„λΌμ΄λ”© 된 κ²½μš°μ—λŠ” ν•΄λ‹Ή λ©”μ†Œλ“œ 호좜 (λ‹€ν˜•μ„±)

 

κ°•μ œ νƒ€μž… λ³€ν™˜

- λΆ€λͺ¨ νƒ€μž…μ—μ„œ μžμ‹ νƒ€μž…μ€ μžλ™ νƒ€μž… λ³€ν™˜x

   - 이럴 경우, μΊμŠ€νŒ… μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•΄μ„œ κ°•μ œ ν˜•λ³€ν™˜μ„ ν•΄μ£Όμ–΄μ•Όν•œλ‹€.

 

λ‹€ν˜•μ„±

- μ‚¬μš© 방법은 λ™μΌν•˜μ§€λ§Œ μ‹€ν–‰ κ²°κ³Όκ°€ λ™μΌν•˜κ²Œ λ‚˜μ˜€λŠ” μ„±μ§ˆ

 

ν•„λ“œ λ‹€ν˜•μ„± 

- ν•„λ“œ νƒ€μž…μ€ λ™μΌν•˜μ§€λ§Œ λŒ€μž…λ˜λŠ” 객체가 λ‹¬λΌμ„œ μ‹€ν–‰ κ²°κ³Όκ°€ λ‹€μ–‘ν•˜κ²Œ λ‚˜μ˜€λŠ” μ„±μ§ˆ

 

λ§€κ°œλ³€μˆ˜ λ‹€ν˜•μ„±

- λ©”μ†Œλ“œκ°€ 클래슀 νƒ€μž…μ˜ λ§€κ°œλ³€μˆ˜λ₯Ό 가지고 μžˆμ„ 경우, μ œκ³΅ν•˜λŠ” 객체에 따라 λ‹€ν˜•μ„± λ°œμƒ

 

 

 

 

+ Recent posts