Spec-Zone.ru › Scala 3.2

Класс SoftReference.SoftReference

Объект-компаньон • Исходный код

class SoftReference[+T <: AnyRef](value: T, queue: ReferenceQueue[T]) extends ReferenceWrapper[T]

Суперагрегаты
Трейт ReferenceWrapper[T]
Трейт Proxy
Трейт Reference[T]
Трейт () => T
Класс Object
Трейт Matchable
Класс Any

Конструкторы

Исходный код
def this(value: T)

Наследованные методы

Исходный код
def apply(): T

возвращает базовое значение

Наследованно из ReferenceWrapper

Исходный код
def clear(): Unit

Наследованно из ReferenceWrapper

Исходный код
def enqueue(): Boolean

Наследованно из ReferenceWrapper

Исходный код
override def equals(that: Any): Boolean

Сравнивает текущий объект (this) с аргументом-объектом (that) на эквивалентность.

Любая реализация этого метода должна быть отношением эквивалентности:

- Он рефлексивен: для любого экземпляра x типа Any, x.equals(x) должен возвращать true. - Он симметричен: для любых экземпляров x и y типа Any, x.equals(y) должен возвращать true тогда и только тогда, когда y.equals(x) возвращает true. - Он транзитивен: для любых экземпляров x, y, и z типа Any если x.equals(y) возвращает true и y.equals(z) возвращает true, то x.equals(z) должен возвращать true.

Если вы переопределяете этот метод, вы должны убедиться, что ваша реализация остаётся отношением эквивалентности. Кроме того, при переопределении этого метода обычно необходимо переопределить hashCode, чтобы гарантировать, что объекты, которые являются "равными" (o1.equals(o2) возвращает true) имеют одинаковые значения хеш-кода scala.Int. (o1.hashCode.equals(o2.hashCode)).

Параметры
that

объект для сравнения с этим объектом на равенство.

Возвращает

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

Определяющие классы Proxy -> Any
Наследованно из Proxy

Исходный код
override def get: Option[T]

возвращает Some базовое значение, если оно ещё не собрано, иначе None

Определяющие классы ReferenceWrapper -> Reference
Наследованно из ReferenceWrapper

Исходный код
override def hashCode: Int

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

Базовый алгоритм хэширования зависит от платформы.

Важно, что для двух объектов могут быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)) но они не обязательно равны (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true) у них были одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому, при переопределении этого метода, следует убедиться, что поведение согласуется с методом equals.

Возвращает

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

Определяющие классы Proxy -> Any
Наследованно из Proxy

Исходный код
def isEnqueued: Boolean

Наследованно из ReferenceWrapper

Исходный код
def self: Reference[_ <: T]

Наследованно из ReferenceWrapper

Исходный код
override def toString: String

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

Базовое представление зависит от платформы.

Возвращает

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

Определяющие классы Proxy -> Any
Наследованно из Proxy

Конкретные поля

Исходный код
val underlying: SoftReference[_ <: T]

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/ref/SoftReference.html

Spec-Zone.ru

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