Scala中的包以及包物件

541732025發表於2015-11-24
跟java中一樣,scala中也有包的概念,主要作用也差不多,但是還是有所區別的
scala中支援package的巢狀

點選(此處)摺疊或開啟

  1. package spark.navigation {
  2.   abstract class Navigator{ //package路徑:spark.navigation.Navigator
  3.     def act
  4.   }
  5.   
  6.   package tests {
  7.     class NavigatorSuite //package路徑:spark.navigation.test.NavigatorSuite
  8.   }
  9.   
  10.   package impls {
  11.     class Action extends Navigator{ //package路徑:spark.navigation.impl.NavigatorSuite
  12.       def act = println("Action")
  13.     }
  14.   }
  15. }

包物件:

點選(此處)摺疊或開啟

  1. package com.scala.spark
  2. package object people {
  3.   val defaultName = "Scala"
  4. }

  5. package people {
  6. class people {
  7.   var name = defaultName  //people包下的people class能訪問pepole包物件裡面定義的所有內容(屬性、方法
  8. }
  9. }

包的隱式引用:

點選(此處)摺疊或開啟

  1. import java.lang._ //引用lang包下的所有東西
  2. import scala._ //scala包下的所有東西
  3. import Predef._ //Predef物件的所有東西
其它:

點選(此處)摺疊或開啟

  1. import java.awt.{Color,Font} //引用包下特定類
  2. import java.util.{HashMap=>JavaHashMap} //定義別名
  3. import scala.{StringBuilder => _} //遮蔽scala包下的StringBuilder

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28912557/viewspace-1845790/,如需轉載,請註明出處,否則將追究法律責任。

相關文章