W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
要在包中使用聲明,我們必須導(dǎo)入它們,就像在Java中一樣。
Scala提供了其他選項(xiàng),如下面導(dǎo)入Java類型的示例所示:
包是一個(gè)命名的代碼模塊。
Java和Scala慣例規(guī)定程序包名稱是代碼所有者的反向域名。
源文件中的第一個(gè)非注釋行:
package com.java2s.stuff
可以導(dǎo)入Scala包,以便可以在當(dāng)前編譯范圍中引用它們。
以下語句導(dǎo)入scala.xml軟件包的內(nèi)容:
import scala.xml._
以下語句導(dǎo)入scala.xml軟件包的內(nèi)容:
import transform._
我們可以從scala.collection.mutable包中導(dǎo)入單個(gè)類和對象,例如HashMap:
import scala.collection.mutable.HashMap
我們可以從單個(gè)包中導(dǎo)入多個(gè)類或?qū)ο?,例如,從scala.collection.immutable包中導(dǎo)入TreeMap和TreeSet:
import scala.collection.immutable.{TreeMap, TreeSet}
import java.awt._ import java.io.File import java.io.File._ import java.util.{Map, HashMap}
我們可以在包中使用下劃線 _
作為通配符導(dǎo)入所有類型。
我們還可以導(dǎo)入單個(gè)Scala或Java類型,如第二行所示。
Java使用“星號"字符 *
作為導(dǎo)入的通配符。
在Scala中,此字符被允許作為方法名稱,因此使用 _
來避免歧義。
第三行導(dǎo)入java.io.File中的所有靜態(tài)方法和字段。
等效的Java導(dǎo)入語句將是import static java.io.File。*;
最后,我們可以導(dǎo)入一個(gè)類或?qū)ο蟛⒅孛@?,您可以從scala.util.parsing.json包中導(dǎo)入JSON類/對象,并將其重命名為JsonParser:
import scala.util.parsing.json.{JSON=> JsonParser}
import可以在任何代碼塊內(nèi)部使用,導(dǎo)入將僅在該代碼塊的范圍內(nèi)有效。
例如,我們可以在類體中導(dǎo)入一些東西,如下面的代碼所示:
class Frog { import scala.xml._ // }
例如,我們可以在類體中導(dǎo)入一些東西,如下面的代碼所示:
這很像Java的靜態(tài)導(dǎo)入。
組合局部范圍導(dǎo)入和導(dǎo)入對象允許我們微調(diào)導(dǎo)入對象及其關(guān)聯(lián)方法的位置。
Scala沒有導(dǎo)入靜態(tài)構(gòu)造,因?yàn)樗衿渌愋鸵粯訉Υ龑ο箢愋汀?br>
我們可以將import語句幾乎放在任何地方,以將它們的可見性限制在需要它們的地方。
我們可以在導(dǎo)入時(shí)重命名類型,我們可以禁止不需要的類型的可見性:
def stuffWithBigInteger() = { import java.math.BigInteger.{ ONE => _, TEN, ZERO => JAVAZERO } println( "TEN: "+TEN ) println( "ZERO: "+JAVAZERO ) }
Scala導(dǎo)入是相對的。
請注意以下導(dǎo)入的注釋:
import scala.collection.mutable._ import collection.immutable._ // Since "scala" is already imported import _root_.scala.collection.parallel._ // full path from real "root"
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: