관리 메뉴

λͺ©λ‘πŸ’» Study ! (24)

Partially Committed

[CH08] μ˜ˆμ™Έμ²˜λ¦¬(Exception handling)

λ³Έ ν¬μŠ€νŒ…μ€ μžλ°”μ˜ 정석 ꡐ재λ₯Ό κ³΅λΆ€ν•˜λ©°, κ°„λ‹¨νžˆ 정리/기둝 μš©λ„λ‘œ μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€. ν˜Ήμ—¬, 잘λͺ»λœ λ‚΄μš©μ΄ μžˆλ‹€λ©΄ μ§€μ ν•΄μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€. 1. μ˜ˆμ™Έμ²˜λ¦¬(exception handling) 컴파일 μ—λŸ¬λŠ” 컴파일 μ‹œ λ°œμƒν•˜λŠ” μ—λŸ¬λ₯Ό λ§ν•˜λ©°, λŸ°νƒ€μž„ μ—λŸ¬λŠ” μ‹€ν–‰ μ‹œ λ°œμƒν•˜λŠ” μ—λŸ¬μ΄κ³  논리적 μ—λŸ¬λŠ” 싀행은 잘 λ˜μ§€λ§Œ μ˜λ„μ™€λŠ” λ‹€λ₯΄κ²Œ λ™μž‘ν•˜λŠ” 경우λ₯Ό λ§ν•œλ‹€. μžλ°”μ—μ„œλŠ” runtime - error λ₯Ό 2가지(error, exception) 으둜 κ΅¬λΆ„ν•˜μ˜€λ”°. error λŠ” λ©”λͺ¨λ¦¬ λΆ€μ‘±(OutOfMemoryError) μ΄λ‚˜ StackOverflowError 와 같은 볡ꡬ할 수 μ—†λŠ” μ‹¬κ°ν•œ 였λ₯˜ exception 은 λ°œμƒλ˜λ”λΌλ„ 수슡이 κ°€λŠ₯ν•œ 비ꡐ적 λ―Έμ•½ν•œ 였λ₯˜ μžλ°”μ—μ„œλŠ” μ‹€ν–‰ μ‹œ λ°œμƒν•  수 μžˆλŠ” 였λ₯˜λ₯Ό 클래슀둜 ..

πŸ’» Study !/JAVA 2022. 8. 2. 17:32
[CH07] 객체지ν–₯ν”„λ‘œκ·Έλž˜λ°4 (OOP)

λ³Έ ν¬μŠ€νŒ…μ€ μžλ°”μ˜ 정석 ꡐ재λ₯Ό κ³΅λΆ€ν•˜λ©°, κ°„λ‹¨νžˆ 정리/기둝 μš©λ„λ‘œ μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€. ν˜Ήμ—¬, 잘λͺ»λœ λ‚΄μš©μ΄ μžˆλ‹€λ©΄ μ§€μ ν•΄μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€. 1. 좔상 클래슀(Abstract class) [μΆ”μƒν΄λž˜μŠ€λž€?] 좔상 클래슀(Abstract class) λŠ” 좔상 λ©”μ„œλ“œ(Abstract method)λ₯Ό ν¬ν•¨ν•˜κ³  μžˆλŠ” 클래슀둜, μΈμŠ€ν„΄μŠ€λ₯Ό 생성할 수 μ—†κ³  μ˜€λ‘œμ§€ 상속을 ν†΅ν•΄μ„œλ§Œ 완성이 κ°€λŠ₯ν•˜λ‹€. ν‚€μ›Œλ“œ abstract λ₯Ό μ•žμ— λΆ™μ—¬ μ™„μ„±ν•  수 있으며, 좔상 λ©”μ„œλ“œλ₯Ό ν¬ν•¨ν•˜κ³  μžˆλ‹€λŠ” 것 μ™Έμ—λŠ” 일반 ν΄λž˜μŠ€μ™€ μ™„μ „νžˆ λ™μΌν•˜λ‹€. [μΆ”μƒλ©”μ„œλ“œλž€?] 좔상 λ©”μ„œλ“œλŠ” λ©”μ„œλ“œμ˜ μ„ μ–ΈλΆ€λ§Œ κ΅¬ν˜„λœ 것을 μ˜λ―Έν•˜λ©°, μžμ„Έν•œ κ΅¬ν˜„/λ™μž‘μ€ 상속받은 ν΄λž˜μŠ€μ— λ”°λΌμ„œ 달라진닀. abstract void paly(int pos); 와 같이 μ„ μ–Έ..

πŸ’» Study !/JAVA 2022. 8. 2. 17:30
[CH07] 객체지ν–₯ν”„λ‘œκ·Έλž˜λ°3 (OOP)

λ³Έ ν¬μŠ€νŒ…μ€ μžλ°”μ˜ 정석 ꡐ재λ₯Ό κ³΅λΆ€ν•˜λ©°, κ°„λ‹¨νžˆ 정리/기둝 μš©λ„λ‘œ μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€. ν˜Ήμ—¬, 잘λͺ»λœ λ‚΄μš©μ΄ μžˆλ‹€λ©΄ μ§€μ ν•΄μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€. 1. package 와 import [νŒ¨ν‚€μ§€; package] νŒ¨ν‚€μ§€λŠ” 클래슀 ν˜Ήμ€ μΈν„°νŽ˜μ΄μŠ€λ₯Ό ν¬ν•¨μ‹œν‚¬ 수 μžˆμ–΄μ„œ μ„œλ‘œ κ΄€λ ¨λœ ν΄λž˜μŠ€λ“€λΌλ¦¬ κ·Έλ£Ή λ‹¨μœ„λ‘œ λ¬Άμ–΄ λ†“μŒμœΌλ‘œμ¨ 클래슀λ₯Ό 효율적으둜 관리할 수 μžˆλ„λ‘ ν•œλ‹€. ν•˜λ‚˜μ˜ μ†ŒμŠ€ νŒŒμΌμ—λŠ” 첫 번째 λ¬Έμž₯으둜 ν•œ ν•œ 번의 νŒ¨ν‚€μ§€ μ„ μ–Έλ§Œμ„ ν—ˆμš©ν•˜λ©°, λͺ¨λ“  ν΄λž˜μŠ€λŠ” λ°˜λ“œμ‹œ ν•˜λ‚˜μ˜ νŒ¨ν‚€μ§€μ— 속해야 ν•œλ‹€. λ˜ν•œ νŒ¨ν‚€μ§€λŠ” 점을 κ΅¬λΆ„μžλ‘œ 계측ꡬ쑰λ₯Ό ꡬ성할 수 있으며, 물리적으둜 .class νŒŒμΌμ„ ν¬ν•¨ν•˜λŠ” ν•˜λ‚˜μ˜ 디렉토리이닀. νŒ¨ν‚€μ§€ 선언문은 ν•˜λ‚˜μ˜ μ†ŒμŠ€ 파일 λ‹Ή 1 번만 선언될 수 μžˆλ‹€. 클래슀λͺ…κ³Ό κ΅¬λΆ„ν•˜κΈ° μœ„ν•΄ μ†Œλ¬Έμžλ₯Ό μ‚¬μš©ν•˜λ„..

πŸ’» Study !/JAVA 2022. 8. 1. 18:24