Класс scala.Any
abstract class Any
Члены-значения абстрактного типа
abstract def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
Члены-значения конкретного типа
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueесли !(this == that), в противном случае false.
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает хэш-значение, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## возвратит одно и то же хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.
- returns
значение хэша, согласованное с ==
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из Any в any2stringadd[Any] с помощью метода any2stringadd в scala.Predef.
- Классы-определения
- any2stringadd
def ->[B](y: B): (Any, B)
- Неявный
- Этот член добавлен неявным преобразованием из Any в ArrowAssoc[Any] с помощью метода ArrowAssoc в scala.Predef.
- Классы-определения
- ArrowAssoc
- Аннотации
- @inline()
final def ==(arg0: Any): Boolean
Проверка двух объектов на равенство. Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
trueесли объект получателя эквивалентен аргументу;falseв противном случае.
final def asInstanceOf[T0]: T0
Приведение типа объекта-получателя к типу T0.
Обратите внимание, что успешность приведения типов во время выполнения зависит от семантики стирания в Scala. Таким образом, выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] - нет. В последнем примере, из-за стирания аргумента типа во время компиляции, невозможно проверить, содержат ли элементы списка необходимый тип.
- returns
объект-получатель.
- Исключения
ClassCastExceptionесли объект-получатель не является экземпляром стирания типаT0.
def ensuring(cond: (Any) ⇒ Boolean, msg: ⇒ Any): Any
- Неявный
- Этот член добавлен неявным преобразованием из Any в Ensuring[Any] с помощью метода Ensuring в scala.Predef.
- Классы-определения
- Ensuring
def ensuring(cond: (Any) ⇒ Boolean): Any
- Неявный
- Этот член добавлен неявным преобразованием из Any в Ensuring[Any] с помощью метода Ensuring в scala.Predef.
- Классы-определения
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Any
- Неявный
- Этот член добавлен неявным преобразованием из Any в Ensuring[Any] с помощью метода Ensuring в scala.Predef.
- Классы-определения
- Ensuring
def ensuring(cond: Boolean): Any
- Неявный
- Этот член добавлен неявным преобразованием из Any в Ensuring[Any] с помощью метода Ensuring в scala.Predef.
- Классы-определения
- Ensuring
def equals(arg0: 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)).
- returns
trueесли объект получателя эквивалентен аргументу;falseв противном случае.
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Строки формата аналогичны String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из Any в StringFormat[Any] выполненное методом StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Аннотации
- @inline()
def hashCode(): Int
Вычисляет значение хеш-кода для объекта.
Алгоритм хеширования по умолчанию зависит от платформы.
Обратите внимание, что для двух объектов допускается наличие одинаковых хеш-кодов (o1.hashCode.equals(o2.hashCode)) при этом они могут не быть равны (o1.equals(o2) возвращает false). Вырожденная реализация могла бы всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true) у них были идентичные хеш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому, при переопределении этого метода, убедитесь, что поведение согласуется с методом equals.
- returns
значение хеш-кода для этого объекта.
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта получателя T0.
Обратите внимание, что результат проверки зависит от стирания типов в Scala. Таким образом, выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, из-за стирания типа в процессе компиляции, невозможно проверить, соответствуют ли элементы списка заданному типу.
- returns
trueесли объект получателя является экземпляром стирания типаT0;falseв противном случае.
def toString(): String
Возвращает строковое представление объекта.
Стандартное представление зависит от платформы.
- returns
строковое представление объекта.
def →[B](y: B): (Any, B)
- Неявный
- Этот член добавлен неявным преобразованием из Any в ArrowAssoc[Any] выполненное методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/Any.html
Класс
Anyявляется корнем иерархии классов Scala. Каждый класс в среде выполнения Scala наследуется непосредственно или косвенно от этого класса.Начиная со Scala 2.10, можно напрямую расширить
Anyс помощью универсальных трейтов. Универсальный трейт — это трейт, который расширяетAny, содержит толькоdefы в качестве членов и не выполняет инициализацию.Основное применение универсальных трейтов — разрешить базовое наследование методов для классов значений. Например,
trait Printable extends Any { def print(): Unit = println(this) } class Wrapper(val underlying: Int) extends AnyVal with Printable val w = new Wrapper(3) w.print()См. Классы значений и универсальные трейты для более подробной информации о взаимодействии универсальных трейтов и классов значений.