Exception Handling refers to:
i) During application execution, if certain special conditions are met, a specific subroutine ‘exception handler’ is called.
ii) All the above options
iii) Identifying all possible erroneous inputs, and managing how an application responds to them.
iv) Commercial runtime environments that contain tools to record debugging information from memory at the time of the exception, to provide ‘root-cause’ analysis information later.