1. 程式人生 > >Scala基礎語法

Scala基礎語法

區分 通過 統一 面向對象 有一個 告訴 面向對象的語言 語法 語言

2019-04-16 18:33:41

標識符(變量名,方法名,類名)

  用反引號`....`包括的任意字符串,即使是關鍵字也可以

變量

  val 與 var

常用類型

  Scala語言是完全面向對象的語言,所以並不區分基本類型和引用類型

  7種數值類型:Byte、Char、Short、Int、Long、Float、Double

  Java中基本類型的數據在Scala中都是可以調用對象方法的


相對於java的類型系統,scala無疑要復雜的多!也正是這復雜多變的類型系統才讓面向對象編程和函數式編程完美的融合在了一起!

Scala中,所有的值都是類對象,而所有的類,包括值類型,都最終繼承自一個統一的根類型Any

。統一類型,是Scala的又一大特點。更特別的是,Scala中還定義了幾個底層類(Bottom Class),比如NullNothing


     1) Null是所有引用類型的子類型,而Nothing是所有類型的子類型。Null類只有一個實例對象,null,類似於Java中的null引用。null可以賦值給任意引用類型,但是不能賦值給值類型

     2) Nothing,可以作為沒有正常返回值的方法的返回類型,非常直觀的告訴你這個方法不會正常返回,而且由於Nothing是其他任意類型的子類,他還能跟要求返回值的方法兼容。

     3) Unit類型用來標識過程,也就是沒有明確返回值的函數。 由此可見,Unit類似於Java裏的void。Unit只有一個實例,(),這個實例也沒有實質的意義。

算數操作符

scala> 1 + 2

等同於:

scala> 1.+(2)

調用函數和方法

   1)調用方法,靜態方法(scala中沒有靜態方法這個概念,需要通過類的伴生對象來實現)

   2)調用方法,非靜態方法,使用對象調用

Scala基礎語法