Есть следующая иерархия наследования: java.lang.Object | +--java.lang.Throwable | +--java.lang.Exception | +--java.lang.RuntimeException | +--java.lang.IndexOutOfBoundsException | +--java.lang.StringIndexOutOfBoundsException | +--java.lang.ArrayIndexOutOfBoundsException
В методе testSomеValue могут быть возбуждены исключения StringIndexOutOfBoundsException и ArrayIndexOutOfBoundsException, при этом они не обрабатываются в блокеtry – catch. Какие из перечисленных ниже утверждений будут верными?
(Ответ считается верным, если отмечены все правильные варианты ответов.)
Варианты ответа
определение метода testSomеValue может включатьthrows StringIndexOutOfBoundsException, ArrayIndexOutOfBoundsException (Верный ответ)
при объявлении метода testSomeValue надо обязательно указывать возбуждаемые исключения
так как в определении метода указано throws StringIndexOutOfBoundsException,ArrayIndexOutOfBoundsException, любой вызывающий его метод должен перехватывать эти типы исключений, вне зависимости от того, возбуждается во время работы исключение или нет
если метод, вызывающий testSomeValue, перехватывает IndexOutOfBoundsException, то исключение StringIndexOutOfBoundsException тоже будет перехватываться (Верный ответ)