Spec-Zone.ru › Scala 2.13 Library

Класс scala.util.Using.Manager

Компаньон объект Manager

final класс Manager extends AnyRef

Управляющий ресурсами.

Ресурсы могут быть зарегистрированы в менеджере вызовом acquire; такие ресурсы будут освобождены в обратном порядке их получения, когда менеджер будет закрыт, независимо от каких-либо исключений, выброшенных во время использования.

См. основную документацию по Using для получения полной информации о поведении подавления.

Источник
Using.scala
Примечание

Рекомендуется для разработчиков API требовать неявного Manager для создания пользовательских ресурсов и вызывать acquire во время создания этих ресурсов. Это гарантирует, что ресурс обязательно будет управляться автоматически, и исключает возможность забыть это сделать. Пример:

class SafeFileReader(file: File)(implicit manager: Using.Manager)
  extends BufferedReader(new FileReader(file)) {

  def this(fileName: String)(implicit manager: Using.Manager) = this(new File(fileName))

  manager.acquire(this)
}
Линейные надтипы
AnyRef, Any

Члены-значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

returns

true если !(this == that), иначе false.

Definition Classes
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает значение хеша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернёт одинаковое значение хеша для каждого из них. Для null возвращает хеш-код, где null.hashCode вызывает NullPointerException.

returns

значение хеша, согласованное с ==

Definition Classes
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен неявным преобразованием из Manager вany2stringadd[Manager] с помощью метода any2stringadd в scala.Predef.
Definition Classes
any2stringadd

def ->[B](y: B): (Manager, B)

Неявный
Этот член добавлен неявным преобразованием из Manager вArrowAssoc[Manager] с помощью метода ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

returns

true если объект-получатель эквивалентен аргументу; false в противном случае.

Definition Classes
AnyRef → Any

def acquire[R](resource: R)(implicit arg0: Releasable[R]): Unit

def apply[R](resource: R)(implicit arg0: Releasable[R]): R

final def asInstanceOf[T0]: T0

Приведение объекта-получателя к типу T0.

Обратите внимание, что успех приведения во время выполнения зависит от правил стирания Scala. Поэтому выражение 1.asInstanceOf[String] бросит ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, из-за стирания аргумента типа во время компиляции невозможно проверить, соответствуют ли элементы списка нужному типу.

returns

объект-получатель.

Definition Classes
Any
Исключения

ClassCastException, если объект-получатель не является экземпляром стирания типа T0.

def clone(): AnyRef

Создаёт копию объекта-получателя.

По умолчанию реализация метода clone зависит от платформы.

returns

копия объекта-получателя.

Атрибуты
protected[java.lang]
Definition Classes
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не задано SLS как члена AnyRef

def ensuring(cond: (Manager) => Boolean, msg: => Any): Manager

Неявный
Этот член добавлен неявным преобразованием из Manager вEnsuring[Manager] с помощью метода Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: (Manager) => Boolean): Manager

Неявный
Этот член добавлен неявным преобразованием из Manager в Ensuring[Manager] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean, msg: => Any): Manager

Неявный
Этот член добавлен неявным преобразованием из Manager в Ensuring[Manager] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean): Manager

Неявный
Этот член добавлен неявным преобразованием из Manager в Ensuring[Manager] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности на не-null экземплярах AnyRef, и имеет три дополнительных свойства:

    Он согласован: для любых не-null экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode важно обеспечить, чтобы их поведение соответствовало равенству ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и они должны хешироваться к одному значению (o1.hashCode == o2.hashCode).

возвращает

true если аргумент является ссылкой на объект-получатель; false в противном случае.

Определяющие классы
AnyRef

def equals(arg0: AnyRef): Boolean

Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов методу eq.

См. также equals в scala.Any.

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Определяющие классы
AnyRef → Any

def finalize(): Unit

Вызывается сборщиком мусора для объекта-получателя, когда на объект больше нет ссылок.

Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.

Атрибуты
protected[java.lang]
Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.Throwable])
Примечание

не определен в SLS как член AnyRef

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с заданной строкой format. Строки формата аналогичны строкам формата String.format (@см. java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из Manager в StringFormat[Manager] с помощью метода StringFormat в scala.Predef.
Определяющие классы
StringFormat
Аннотации
@inline()

final def getClass(): Class[_ <: AnyRef]

Возвращает представление класса во время выполнения объекта.

возвращает

объект класса, соответствующий типу времени выполнения получателя.

Определяющие классы
AnyRef → Any
Аннотации
@native()

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

возвращает

значение хэш-кода для этого объекта.

Классы определений
AnyRef → Any
Аннотации
@native()

final def isInstanceOf[T0]: Boolean

Проверка, является ли динамический тип объекта-получателя T0.

Обратите внимание, что результат проверки выполняется с учётом семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку аргумент типа стирается в процессе компиляции, невозможно проверить, относятся ли элементы списка к указанному типу.

возвращает

true, если объект-получатель является экземпляром стираемого типа T0; false в противном случае.

Классы определений
Any

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

возвращает

true если аргумент не является ссылкой на объект-получатель; false в противном случае.

Классы определений
AnyRef

final def notify(): Unit

Разбуживает единственную нить, ожидающую монитора объекта-получателя.

Классы определений
AnyRef
Аннотации
@native()
Примечание

не указан в SLS как член AnyRef

final def notifyAll(): Unit

Разбуживает все нити, ожидающие монитора объекта-получателя.

Классы определений
AnyRef
Аннотации
@native()
Примечание

не указан в SLS как член AnyRef

final def synchronized[T0](arg0: => T0): T0

Классы определений
AnyRef

def toString(): String

Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.

возвращает

строковое представление объекта.

Классы определений
AnyRef → Any

final def wait(): Unit

Классы определений
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Классы определений
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Классы определений
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException]) @native()

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/util/Using$$Manager.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API