Spec-Zone.ru › Scala 2.12 Library

Трейт scala.App

trait App extends DelayedInit

Трейт App может быть использован для быстрого превращения объектов в исполняемые программы. Вот пример:

object Main extends App {
  Console.println("Hello World: " + (args mkString ", "))
}

Здесь объект Main наследует метод main от App.

args возвращает текущие аргументы командной строки в виде массива.

Предупреждения

Следует отметить, что этот трейт реализован с использованием функциональности DelayedInit, что означает, что поля объекта не будут инициализированы до выполнения метода main.

Также следует отметить, что метод main не должен переопределяться: всё тело класса становится «методом main».

В будущих версиях этого трейта он больше не будет расширять DelayedInit.

Source
App.scala
Since

2.1

Линейные супертипы

Значения членов

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

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

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

Неявный
Этот член добавлен неявным преобразованием из App в ArrowAssoc[App] при помощи метода ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc
Annotations
@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 args: Array[String]

Аргументы командной строки, переданные методу main приложения.

Attributes
protected
Annotations
@deprecatedOverriding( message = "args should not be overridden" , since = "2.11.0" )

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

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

Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws( ... ) @native()
Примечание

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

def ensuring(cond: (App) ⇒ Boolean, msg: ⇒ Any): App

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

def ensuring(cond: (App) ⇒ Boolean): App

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

def ensuring(cond: Boolean, msg: ⇒ Any): App

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

def ensuring(cond: Boolean): App

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

final def eq(arg0: AnyRef): Boolean

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

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

    Он согласован: для любых не-нулевых экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-нулевого экземпляра 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: Any): Boolean

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

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

возвращает

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

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

val executionStart: Long

Время начала выполнения этой программы в миллисекундах с момента 1 января 1970 года по UTC.

Аннотации
@deprecatedOverriding( сообщение = ... , с = "2.11.0" )

def finalize(): Unit

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

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

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

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

def formatted(fmtstr: String): String

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

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

final def getClass(): Class[_]

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

возвращает

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

Классы определения
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

def main(args: Array[String]): Unit

Метод main. Он хранит все аргументы, чтобы их можно было получить с помощью args, а затем выполняет все сегменты кода инициализации в том порядке, в котором они были переданы в delayedInit.

args

аргументы, переданные методу main

Аннотации
@deprecatedOverriding( сообщение = "main should not be overridden" , с = "2.11.0" )

final def ne(arg0: AnyRef): Boolean

Равносильно !(this eq that).

returns

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

Definition Classes
AnyRef

final def notify(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Примечание

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

final def notifyAll(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Примечание

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

final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef

def toString(): String

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

returns

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

Definition Classes
AnyRef → Any

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )

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

Definition Classes
AnyRef
Annotations
@throws( ... )

final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws( ... ) @native()

def →[B](y: B): (App, B)

Неявный
Этот член добавлен неявным преобразованием из App в ArrowAssoc[App] выполненным методом 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/App.html

Spec-Zone.ru

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