# 1) Exception Handling

- [1) Introduction to Exception Handling](/project/exception-handling/1-introduction-to-exception-handling.md)
- [2) Categories of Exceptions](/project/exception-handling/2-categories-of-exceptions.md)
- [3) Creating a method that throws an exception](/project/exception-handling/3-creating-a-method-that-throws-an-exception.md)
- [4) Creating Custom Exception Classes](/project/exception-handling/4-creating-custom-exception-classes.md)
- [5)What happens when an exception is thrown?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown.md)
- [5.1) Creating try-catch-finally blocks](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/5.1-creating-try-catch-finally-blocks.md)
- [5.2) Using a method that throws a checked exception](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/5.2-using-a-method-that-throws-a-checked-exception.md)
- [5.3) Using a method that throws a runtime exception](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/5.3-using-a-method-that-throws-a-runtime-exception.md)
- [5.4) Using a method that throws an error](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/5.4-using-a-method-that-throws-an-error.md)
- [5.5) Will a finally block execute even if the catch block defines a return statement?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/5.5-will-a-finally-block-execute-even-if-the-catch-block-defines-a-return-statement.md)
- [5.6) What happens if both a catch and a finally block define return statement?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/what-happens-if-both-a-catch-and-a-finally-block-define-return-statement.md)
- [5.7) What happens if a finally block modifies the value returned from a catch block?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/what-happens-if-a-finally-block-modifies-the-value-returned-from-a-catch-block.md)
- [5.8) Can a try block be followed only by a finally block?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/can-a-try-block-be-folloed-only-by-a-finally-block.md)
- [5.9) Does the order of the exceptions caught in the catch blocks matter?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/does-the-order-of-the-exceptions-caught-in-the-catch-blocks-matter.md)
- [5.10) Can I rethrow an exception or the error I catch?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/can-i-rethrow-an-exception-or-the-error-i-catch.md)
- [5.11) Can I declare my methods to throw a checked exception instead of handling it?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/can-i-declare-my-methods-to-throw-a-checked-exception-instead-of-handling-it.md)
- [5.12) I can create nested loops, so can I create nested try-catch blocks too?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/i-can-create-nested-loops-so-can-i-create-nested-try-catch-blocks-too.md)
- [5.13) Should I handle errors?](/project/exception-handling/4-what-happens-when-an-exception-is-thrown/should-i-handle-errors.md)
- [6) Best Practices](/project/exception-handling/5-common-exception-classes.md)
- [7) Cheat Sheet](/project/exception-handling/7-cheat-sheet.md)
- [8) Problems](/project/exception-handling/8-problems.md)
