Exceptions address the robustness of your application while assertions address its correctness. Assertions should be used to check something that should never happen while an exception should be used to check something that might happen (something in which you don't have control like user ...