官术网_书友最值得收藏!

Base Syntax

Now that we can use REPL, let's understand the base Scala syntax. For now, it's not necessary to learn it in detail, but let's get familiar with it by using an example.

Note

For a formal, detailed description, refer to the SLS: Scala Language Specification here: http://scala-lang.org/files/archive/spec/2.12/.

Base Syntax for Definitions

Scala compilation unit – This is a set of definitions inside an entity (template-entity), which can be an object, a class, or a trait. We will speak about the Object-Oriented part of the Scala language in detail later. Now, let's look at the basic syntax. Let's define some classes in REPL:

> class X {  def f():Int = 1 }
> Class X defined  // answer in REPL

Definitions inside the entity can be nested entities, functions, or values:

> def f():Int = 1

Here, the function f is defined, returning 1. We will talk about this function in detail in Chapter 3, Functions. Now, let's stay on the top-level view:

> val x = 1

Here, the value x is defined with value 1:

> var y = 2

Here, the mutable variable y is defined with value 2.

Other high-level entities include objects and traits. We can create objects by writing object or trait definitions:

>  object O {  def f():Int =1  }
>  trait O {  def f():Int =1  }

We will talk about classes, objects, and traits in the next chapter.

Now, let's look at defining an object in REPL with the name ZeroPoint.

Steps for Completion:

  1. Open REPL by typing the following command in sbt:
    sbt console
  2. Type in the following commands in REPL:
    >  object ZeroPoint {
    >     val x:Int = 0
    >     val y:Int = 0
    > }
主站蜘蛛池模板: 和顺县| 泗阳县| 安达市| 彭州市| 靖西县| 汤阴县| 会理县| 小金县| 丹巴县| 江阴市| 江口县| 弋阳县| 双柏县| 舞钢市| 曲周县| 茂名市| 宁德市| 安康市| 云霄县| 吐鲁番市| 宣威市| 新巴尔虎左旗| 渭南市| 辉南县| 荣成市| 陆川县| 博野县| 丰县| 沁阳市| 清流县| 林口县| 湛江市| 卢氏县| 桃江县| 泾阳县| 河源市| 嘉荫县| 麻江县| 福泉市| 林芝县| 盈江县|