- $! : μλ¬λ₯Ό λ΄λ μ μ κ°μ²΄
- rescue
- μμΈ μ²λ¦¬ ꡬ문, rescueλ switch caseλ¬Έμ²λΌ λμνλ€. λ§λ μ²λ¦¬ ꡬ문μ μ°Ύμ λ κΉμ§ κ³μ λ§€μΉ.
- beginμμμ μ€ννλ€ μμΈκ° λ°μνλ©΄ rescue ꡬ문μΌλ‘ 컨νΈλ‘€μ΄ μ΄λλλ€.
- μμΈλ₯Ό μ²λ¦¬ν λ€μ μ΄μ μ½λλ‘ λμκ°κ³ μΆλ€λ©΄ retryνλ©΄ λλ€.
- μμΈκ° λ°μνμ§ μμΌλ©΄ rescueλ μ€νλμ§ μλλ€.
- μ¬μ©λ² : rescue μμΈν΄λμ€λͺ
- μ°Έκ³
rescue Exception
# μμΈ μ²λ¦¬
end
- else
- μμΈκ° λ°μνμ§ μμμ λ μ€νλλ μ½λλΈλ
- ensure
- μμΈμ λ°μ μ 무μ μκ΄μμ΄ νμ μ€νλλ μ½λλΈλ
- μλ°μ finallyμ κ°μ
- catch throw
- μμΈ μ²λ¦¬μ λ€λ₯Έ νν
- μμΈ λ°μμ throwλ₯Ό μ΄μ©ν΄ μμΈλ₯Ό λ°μμν€κ³ catchμμ μ¬λ³Όμ μ΄μ©νμ¬ μμΈλ₯Ό μΊμΉνλ€.
- throwμμ μ¬λ³Ό(λΌλ²¨)μ μ΄μ©νλ©΄ μ€μ²©λ μ½λ ꡬ문μ λ°λ‘ νμΆν μ μλ€.