Объект scala.reflect.ManifestFactory
объект ManifestFactory
Значения членов
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
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
val Any: Manifest[Any]
val AnyRef: Manifest[AnyRef]
val AnyVal: Manifest[AnyVal]
val Boolean: BooleanManifest
val Byte: ByteManifest
val Char: CharManifest
val Double: DoubleManifest
val Float: FloatManifest
val Int: IntManifest
val Long: LongManifest
val Nothing: Manifest[Nothing]
val Null: Manifest[Null]
val Object: Manifest[AnyRef]
val Short: ShortManifest
val Unit: UnitManifest
def abstractType[T](prefix: Manifest[_], name: String, upperBound: Class[_], args: Manifest[_]*): Manifest[T]
Manifest для абстрактного типа prefix # name. upperBound не строго необходим, так как его можно получить с помощью рефлексии. Он был добавлен для того, чтобы вычисление стирания типов можно было выполнить без рефлексии.
def arrayType[T](arg: Manifest[_]): Manifest[Array[T]]
final def asInstanceOf[T0]: T0
Приводит текущий объект к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от правил стирания типов в Scala. Поэтому выражение 1.asInstanceOf[String] может вызвать ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не вызовет исключения. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, соответствуют ли элементы списка нужному типу.
- возвращает
текущий объект.
- Определения классов
- Any
- Исключения
ClassCastException, если текущий объект не является экземпляром стирания типаT0.
def classType[T](prefix: Manifest[_], clazz: Class[_], args: Manifest[_]*): Manifest[T]
def classType[T](clazz: Class[T], arg1: Manifest[_], args: Manifest[_]*): Manifest[T]
def classType[T](clazz: Class[_]): Manifest[T]
Manifest для типа класса clazz[args], где clazz является классом верхнего уровня или статическим классом.
- Примечание
Этот случай без префикса и без аргументов отделен, потому что он вызывается из ScalaRunTime.boxArray сам по себе. Если мы передаём varargs как массивы в эту функцию, мы получаем бесконечный рекурсивный вызов boxArray. (Кроме того, отдельный случай более эффективен)
def clone(): AnyRef
Создаёт копию объекта-приёмника.
По умолчанию реализация метода clone зависит от платформы.
- возвращает
копию объекта-приёмника.
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).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(arg0: AnyRef): Boolean
Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
final def getClass(): Class[_ <: AnyRef]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
def hashCode(): Int
def intersectionType[T](parents: Manifest[_]*): Manifest[T]
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
def singleType[T <: AnyRef](value: AnyRef): Manifest[T]
final def synchronized[T0](arg0: => T0): T0
- Классы-определения
- AnyRef
def toString(): String
Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.
- returns
строковое представление объекта.
- Definition Classes
- AnyRef → Any
def valueManifests: List[AnyValManifest[_]]
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long): Unit
def wildcardType[T](lowerBound: Manifest[_], upperBound: Manifest[_]): Manifest[T]
© 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/reflect/ManifestFactory$.html
ManifestFactoryопределяет методы-фабрики для манифестов. Он предназначен для использования компилятором и не должен использоваться в клиентском коде.В отличие от
Manifest, эта фабрика не аннотирована предупреждением о устаревании. Это делается для предотвращения лавины предупреждений об устаревании в коде, вызывающем методы с манифестами. Почему так сложно? Прочитайте комментарии кClassManifestFactory.