Supposing I have this scenario:
function1() call to function2(), and function2() call to function3().
if function3() throws an exception, can I capture the exception from function1()?
And in the case in which maybe, some of these functions is in a different class?, can I continue capturing from function1?
If you don't catch the exception then it will automatically bubble up through the call stack. If you've not caught the exception in function2 or function3, you'll be able to catch it in function1.