您好,登錄后才能下訂單哦!
這篇文章主要介紹“scala的包怎么創建和導入”,在日常操作中,相信很多人在scala的包怎么創建和導入問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”scala的包怎么創建和導入”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
Scala 使用包來創建命名空間,從而允許你創建模塊化程序。
通過在 Scala 文件的頭部聲明一個或多個包名稱來創建包。
一個慣例是將包命名為與包含 Scala 文件的目錄名相同。但是,Scala 并未對文件布局作任何限制。在一個 sbt 工程中,package users
的目錄結構可能如下所示:
- ExampleProject
- build.sbt
- project
- src
- main
- scala
- users
User.scala
UserProfile.scala
UserPreferences.scala
- test
注意 users
目錄是包含在 scala
目錄中的,該包中包含有多個 Scala 文件。包中的每個 Scala 文件都可以具有相同的包聲明。聲明包的另一種方式是使用大括號:
package users { package administrators { class NormalUser } package normalusers { class NormalUser }}
如你所見,這允許包嵌套并提供了對范圍和封裝的更好控制。
包名稱應全部為小寫,如果代碼是在擁有獨立網站的組織內開發的,則應采用以下的約定格式:<top-level-domain>.<domain-name>.<project-name>
。例如,如果 Google 有一個名為 SelfDrivingCar
的項目,則包名稱將如下所示:
package com.google.selfdrivingcar.camera
class Lens
這可以對應于以下目錄結構:
SelfDrivingCar/src/main/scala/com/google/selfdrivingcar/camera/Lens.scala
導入
import
語句用于導入其他包中的成員(類,特質,函數等)。 使用相同包的成員不需要 import
語句。 導入語句可以有選擇性:
import users._ import users.User import users.{User, UserPreferences} import users.{UserPreferences => UPrefs}
Scala 不同于 Java 的一點是 Scala 可以在任何地方使用導入:
def sqrtplus1(x: Int) = { import scala.math.sqrt sqrt(x) + 1.0}
如果存在命名沖突并且你需要從項目的根目錄導入,請在包名稱前加上 _root_
:
package accounts
import _root_.users._
注意:包 scala
和 java.lang
以及 object Predef
是默認導入的。
到此,關于“scala的包怎么創建和導入”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。