Saying that Rust "has exceptions" is dishonest. What matters isn't whether they technically exist, but if and how they're used.
In idiomatically written Rust you will never obtain an exception/panic (unless there is a bug), and exceptions are not used for control flow. This is not the case in Java or C++ or many other languages.