Да, существует иерархия исключений, вы всегда должны начинать отлавливать более конкретные исключения и, наконец, отлавливать более широкие исключения. Иерархия обычно определяется наследованием.
В вашем случае, поскольку вы перехватываете это исключение последним, это должно быть потому, что исключение тайм-аута, которое вы перехватываете первым, ссылается на другой пакет или пространство имен. И последнее исключение, которое вы ловите, это суперкласс других исключений.