Spec-Zone.ru › Scala 3.2

Trait ReferenceWrapper.ReferenceWrapper

Исходный код

trait ReferenceWrapper[+T <: AnyRef] extends Reference[T] with Proxy

Supertypes
trait Proxy
trait Reference[T]
trait () => T
class Object
trait Matchable
class Any
Известные подтипы
class PhantomReference[T]
class SoftReference[T]
class WeakReference[T]

Конкретные методы

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

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

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

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

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

возвращает базовое значение Some, если оно не было собрано, в противном случае None

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

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

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

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

Исходный код
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 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

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

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

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

Возвращаемые значения

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

Классы определений Proxy -> Any
Наследованно от Proxy

Абстрактные поля

Исходный код
val underlying: Reference[_ <: 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/ReferenceWrapper.html

Spec-Zone.ru

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