Defensive coding: Using a generic exception would force a caller that wishes to catch it to potentially catch unrelated exceptions as well.
Clarity: Base exception classes offer no information on the nature of the failure.
Suppress false positives by adding the suppression annotation @SuppressWarnings("ThrowSpecificExceptions")
to the enclosing element.