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

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
    > }
主站蜘蛛池模板: 溧阳市| 仪陇县| 清镇市| 耒阳市| 诸暨市| 伊宁县| 清新县| 辽宁省| 灵台县| 沛县| 伊宁市| 建昌县| 措美县| 镇远县| 凉山| 田林县| 句容市| 怀安县| 内江市| 威远县| 南郑县| 楚雄市| 富源县| 苍溪县| 东兰县| 平乡县| 饶平县| 西乌| 山阴县| 黄大仙区| 藁城市| 尼玛县| 北流市| 东乌珠穆沁旗| 九台市| 双江| 宁夏| 新泰市| 贵阳市| 宁国市| 武汉市|