복붙노트

[SCALA] 스칼라의 애플리케이션 특성과 기본 방법을 사용하여 차이점

SCALA

스칼라의 애플리케이션 특성과 기본 방법을 사용하여 차이점

차이 사이는 무엇인가

object Application extends App {
   println("Hello World")
}

object Application {
    def main(args: Array[String]): Unit = {
        println("Hello World");
    }
}

해결법

  1. ==============================

    1.앱의 특성은 실행 스칼라 프로그램을 생성하는 편리한 방법입니다. 메인 altenative 방법에 차이점은 애플리케이션 특성은 지연 initalization 기능을 사용하도록 (분리 명백한 차이 통사부터)이다.

    앱의 특성은 실행 스칼라 프로그램을 생성하는 편리한 방법입니다. 메인 altenative 방법에 차이점은 애플리케이션 특성은 지연 initalization 기능을 사용하도록 (분리 명백한 차이 통사부터)이다.

    2.9의 릴리스 노트 (http://www.scala-lang.org/old/node/9483 참조)에서

  2. ==============================

    2.이 두 가지 경우 스칼라 스크립트에 동일하지 않습니다.

    이 두 가지 경우 스칼라 스크립트에 동일하지 않습니다.

    객체는 응용 프로그램은 "스칼라 MyObject.scala"명령이 실행되지 않았습니다 확장 하지만, 메인 메소드를 포함하는 객체는 "스칼라 MyObject.scala"명령에 의해 실행 하였다. 어느 스크립트를위한 주요 방법으로 개체를 찾고 스칼라 설명했다.

    이클립스의 REPL 또는 스칼라 워크 시트를 사용하는 경우, 두 경우 모두에 대한 명시 적 Object.in (배열 [문자열] ())를 호출 할 필요가있다.

    이 간단한 팁은 나 같은 초보자를위한 도움.

  3. ==============================

    3.에서 [[DelayedInit] 기능, 메인 메소드가 실행되기 전에 객체의 필드는 초기화되지 않을 것이라는 것을 의미를 사용하여 구현되는 애플리케이션 특성.

    에서 [[DelayedInit] 기능, 메인 메소드가 실행되기 전에 객체의 필드는 초기화되지 않을 것이라는 것을 의미를 사용하여 구현되는 애플리케이션 특성.

  4. from https://stackoverflow.com/questions/11667630/difference-between-using-app-trait-and-main-method-in-scala by cc-by-sa and MIT license