Throwable.AddSuppressed(Throwable) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Добавляет указанное исключение к исключениям, которые были отключены для доставки этого исключения.
[Android.Runtime.Register("addSuppressed", "(Ljava/lang/Throwable;)V", "")]
public void AddSuppressed (Java.Lang.Throwable exception);
[<Android.Runtime.Register("addSuppressed", "(Ljava/lang/Throwable;)V", "")>]
member this.AddSuppressed : Java.Lang.Throwable -> unit
Параметры
- exception
- Throwable
Исключение, добавляемое в список подавляемых исключений
- Атрибуты
Исключения
Значение if throwable == this
.
Значение if throwable == null
.
Комментарии
Добавляет указанное исключение к исключениям, которые были отключены для доставки этого исключения. Этот метод является потокобезопасной и обычно вызывается (автоматически и неявно) оператором try
-with-resources.
Поведение подавления включено <,>если< только> не отключены #Throwable(String, Throwable, Boolean, boolean) через конструктор. Если подавление отключено, этот метод ничего не делает, кроме проверки его аргумента.
Обратите внимание, что если одно исключение #initCause(Throwable) вызывает другое исключение, первое исключение обычно перехватывается, а затем в ответ возникает второе исключение. Иными словами, между двумя исключениями существует причинно-причинная связь.
В отличие от этого, существуют ситуации, когда два независимых исключения могут быть созданы в одноуровневых блоках кода, в частности в try
блоке try
инструкции -with-resources и блоке, созданном finally
компилятором, который закрывает ресурс.
В таких ситуациях может распространяться только одно из создаваемых исключений. try
В инструкции -with-resources при наличии двух таких исключений исключение, полученное из try
блока, распространяется, а исключение из finally
блока добавляется в список исключений, подавляемых исключением из try
блока. Как исключение отключает стек, он может накапливать несколько подавляемых исключений.
Исключение может подавлять исключения, а также вызываться другим исключением. Независимо от того, имеет ли исключение причину семантически известно во время его создания, в отличие от того, будет ли исключение подавлять другие исключения, которые обычно определяются только после создания исключения.
Обратите внимание, что программист также может воспользоваться преимуществами вызова этого метода в ситуациях, когда существует несколько одноуровневых исключений и только один может распространяться.
Добавлено в версии 1.7.
Документация по Java для java.lang.Throwable.addSuppressed(java.lang.Throwable)
.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.