Sometimes an exception is retrofitted into control flow to interrupt it in a way that it wasn't originally designed to be interrupted. Such an exception is an implementation detail. Once the exception is caught internally, it is discarded.
An exception has a stacktrace. Filling in a stacktrace is not free. Filling in a stacktrace that won't be used seems like a waste. ------------- Commit messages: - Update copyright years - Initial commit Changes: https://git.openjdk.java.net/jdk/pull/8347/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8347&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8285396 Stats: 15 lines in 6 files changed: 4 ins; 0 del; 11 mod Patch: https://git.openjdk.java.net/jdk/pull/8347.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/8347/head:pull/8347 PR: https://git.openjdk.java.net/jdk/pull/8347