Scala语言基础详解,并在IDEA中安装Scala插件
Scala起源
Scala是一門多范式的編程語言,一種類似java的編程語言,設計初衷是實現可伸縮的語言、并集成面向對象編程和函數式編程的各種特性。
Scala語言的特點:
Scala是面向對象的:Scala是一個純面向對象語言,在某種意義上來講所有數值都是對象。對象的類型和行為是由class和trait來描述的。Class的抽象可由子類化和一種靈活的基于mixin的組合機制(它可作為多重繼承的簡單替代方案)來擴展。
Scala是函數式的: Scala還是一個函數式語言,在某種意義上來講所有函數都是數值。Scala為定義匿名函數提供了一種輕量級的語法,它支持高階(higher- order)函數、允許函數嵌套、支持柯里化(currying)。Scala的case類及其內置支持的模式匹配模型代數類型在許多函數式編程語言中 都被使用。
Scala是靜態類型的:Scala配備了一套富有表現力的類型系統,該抽象概念以一種安全的和一致的方式被使用。
Scala是可擴展的:Scala的設計承認了實踐事實,領域特定應用開發通常需要領域特定語言擴展。Scala提供了一個獨特的語言組合機制,這可以更加容易地以類庫的形式增加新的語言結構:
. 任何方式可以被用作中綴(infix)或后綴(postfix)操作符 . 閉包按照所期望的類型(目標類型)自動地被構造兩者結合使用可方便地定義新語句,無需擴展語法,也無需使用類似宏的元編程工具。
Scala可與Java和.NET進行互操作:Scala 設計時就考慮了與流行編程環境良好交互,如Java 2運行時環境(JRE)和 .NET框架(CLR)。特別是與主流面向對象語言,如Java和C#盡量無縫交互。Scala有像Java和C#一樣的編譯模型(獨立編譯,動態裝載 類),允許訪問成千上萬的高質量類庫。
使用Scala開發的框架
1.Spark是使用Scala編程語言開發的。開發Spark程序可以使用Java、Python和Scala,但是Scala是最優雅的方式。
2.Kafka也是使用Scala編寫的。
3.基于JVM的語言更融入Hadoop生態圈
Scala的優勢
■多范式編程:面向對象編程、函數式編程
■表達能力強,代碼精簡
面向對象特性
■每個值都是對象
■對象的數據類型和行為由類(Class) 和特征(Trait, 類似于interface )描述
■利用特征實現混入式多重繼承
Scala與Java有著相同的原始數據類型
Scala數據類型層次結構
靜態類型
Scala具備類型系統,通過編譯時檢查,保證代碼的安全性和一致性。類型系統具體支持以下特性:
泛型類
協變和逆變
標注
類型參數的上下限約束
把類別和抽象類型作為對象成員
復合類型
引用自己時顯式指定類型
視圖
多態方法
Scala環境安裝
1.scala官網下載安裝包安裝 https://www.scala-lang.org/download/
2.配置scala的環境變量SCALA_HOME
3.下載Scala的路徑最好和java的jdk同一路徑下,當然必須要有jdk
4.安裝好以后到系統cmd窗口輸入命令scala,當出現scala時,說明scala安裝成功了,如下圖所示:
IDEA中安裝Scala插件
1.找到安裝Scala插件的官網
https://plugins.jetbrains.com/plugin/1347-scala/versions
選擇Versions,然后找和你IDEA版本一樣的scala插件。
注意:
版本一定要一致連月份也要一樣,如果沒有匹配的月份,就用下個月份的,然后點擊最右邊的向下箭頭,就可以下載了,下載好后記住存放位置。
2.退出到IDEA界面右下角選擇plugins,找到右上角的齒輪標志或者(Install plugin from disk),
IDEA版本不一樣,新的版本會在右上角出現一個齒輪標志,如上圖所示,我的出現在右下角的Install plugin from disk,點擊就好了。
找到你下載的版本插件選擇好點擊OK后,點擊右上角Restart Intellij IDEA,如下圖所示
等待自己重啟,這時插件就已經安裝好了!
創建Scala Maven工程
1.創建一個普通的maven工程File->Project->Maven(注意:maven工程是Java工程)選擇的時候,不僅有maven,還會有scala供你選擇,說明插件安裝成功了
2.引入scala-library依賴,注意版本要和自己安裝的scala版本保持一致
3.在src/main/下重新建一個directory命名scala和java同級,也就是src/main/scala,
右鍵單擊scala選擇 Mark Directory as ,點擊 Sources Root,如下圖所示
4.導入scala的各種包,選擇右上角的文件圖標,點擊后選擇Libraries,旁邊右上角有個"+"單擊后選擇Scala SDK 找到你的scala版本,接下來就直接點擊確定,這時scala的各種包就導好了!或者在pom.xml引入Scala的依賴包,一樣可以!
5.然后右鍵單擊scala的文件夾,選擇New找到Scala Class 就可以創建一個scala 類了,創建類名后,把Class換成Object就可以愉快的操作Scala了,下圖所示
pom.xml配置
在dependencies中引入依賴包
語法規范
Scala 基本語法需要注意以下幾點:
區分大小寫 - Scala是大小寫敏感的,這意味著標識Hello 和 hello在Scala中會有不同的含義
類名 - 對于所有的類名的第一個字母要大寫。
如果需要使用幾個單詞來構成一個類的名稱,每個單詞的第一個字母要大寫。
方法名稱 - 所有的方法名稱的第一個字母用小寫。
如果若干單詞被用于構成方法的名稱,則每個單詞的第一個字母應大寫。
例如:def myMethodName()
def main(args: Array[String]) - Scala程序從main()方法開始處理,這是每一個Scala程序的強制程序入口部分。
Scala 注釋
Scala 類似 Java 支持單行和多行注釋。多行注釋可以嵌套,但必須正確嵌套,一個注釋開始符號對應一個結束符號。注釋在 Scala 編譯中會被忽略。
空行和空格
一行中只有空格或者帶有注釋,Scala 會認為其是空行,會忽略它。標記可以被空格或者注釋來分割。
換行符
Scala是面向行的語言,語句可以用分號(;)結束或換行符。Scala 程序里,語句末尾的分號通常是可選的。如果你愿意可以輸入一個,但若一行里僅
有一個語句也可不寫。另一方面,如果一行里寫多個語句那么分號是需要的。
Scala 轉義字符
Scala 變量
在 Scala 中,使用關鍵詞 “var” 聲明變量,使用關鍵詞 “val” 聲明常量。
示例聲明變量: var myVar : String = “Foo”
聲明常量: val myVal : String = “Too”
注意
以上定義了常量 myVal,它是不能修改的。如果程序嘗試修改常量 myVal 的值,程序將會在編譯時報錯。
變量類型聲明
變量的類型在變量名之后等號之前聲明。
語法格式如下:
var VariableName : DataType [= Initial Value]
或
val VariableName : DataType [= Initial Value]
變量類型引用
在 Scala 中聲明變量和常量不一定要指明數據類型,在沒有指明數據類型的情況下,其數據類型是通過變量或常量的初始值推斷出來的。
所以,如果在沒有指明數據類型的情況下聲明變量或常量必須要給出其初始值,否則將會報錯。
示例:
var myVar = 10;
val myVal = “Hello, Scala!”;
Scala 多個變量聲明
示例:xmax, ymax都聲明為100
val xmax, ymax = 100;
后續會有更多關于Scala的 詳細使用方法,記得關注小編!
總結
以上是生活随笔為你收集整理的Scala语言基础详解,并在IDEA中安装Scala插件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: preventExtention、fre
- 下一篇: Cannot add property