Does a finally Block Always Execute in Java? Exceptions, Return, and Edge Cases | CodeTrail