Scala 基礎--對比 Java

目錄

基礎語法

Scala 數據類型

多行字符串的表示方法

Null 值

Scala 變量

變量類型聲明

Scala 訪問修飾符


基礎語法

Scala 與 Java 的最大區別是:Scala 語句末尾的分號 ; 是可選的。

如果想要引入包中的幾個成員,可以使用selector(選取器):

import java.awt.{Color, Font}
// 重命名成員
import java.util.{HashMap => JavaHashMap}
// 隱藏成員
import java.util.{HashMap => _, _} // 引入了util包的所有成員,但是HashMap被隱藏了

Scala 數據類型

幾個與java不同的數據類型:

Unit

表示無值,和其他語言中void等同。用作不返回任何結果的方法的結果類型。Unit只有一個實例值,寫成()。

Null

null 或空引用

Nothing

Nothing類型在Scala的類層級的最底端;它是任何其他類型的子類型。

Any

Any是所有其他類的超類

AnyRef

AnyRef類是Scala裏所有引用類(reference class)的基類

Scala中的數據類型都是對象,也就是說Scala沒有Java中的原生對象

多行字符串的表示方法

多行字符串用三個雙引號來表示分隔符,格式爲:""" ... """。

val foo = """這個是一個多行註釋
hello
Word
OK"""

Null 值

空值是 scala.Null 類型。

Scala.Null和scala.Nothing是用統一的方式處理Scala面向對象類型系統的某些"邊界情況"的特殊類型。

Null類是null引用對象的類型,它是每個引用類(繼承自AnyRef的類)的子類。Null不兼容值類型。

Scala 變量

在 Scala 中,使用關鍵詞 "var" 聲明變量,使用關鍵詞 "val" 聲明常量。被 "val" 聲明的常量是不可以修改的。

變量類型聲明

變量的類型在變量名之後等號之前聲明。定義變量的類型的語法格式如下:

var VariableName : DataType [=  Initial Value]

或

val VariableName : DataType [=  Initial Value]

Scala 訪問修飾符

Scala 訪問修飾符基本和Java的一樣,分別有:private,protected,public。

如果沒有指定訪問修飾符,默認情況下,Scala 對象的訪問級別都是 public。

Scala 中的 private 限定符,比 Java 更嚴格,在嵌套類情況下,外層類甚至不能訪問被嵌套類的私有成員。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章