An exceptional is an unexpected error that we are knowing it will occur when the program runs.
1. Trying to read from a file that does not exist,throws file error not found exception.
2. Trying to read from a database table that does not exist, throws a sql exception.
Showing actual unhandled exception to the user is bad for two reasons
1. Users will be annoyed as they are cryptic and does not makes much sense to the end user.
2. Exception contains information that can be used for hacking into your application.