本文共 1400 字,大约阅读时间需要 4 分钟。
1、 Scala也使用包来进行分工和代码的组织
2、Scala包的作用域是如果有括号,就是括号区域内,如果没有括号,是从定义开始的整个代码块。 3、因为在包中不可以定义成员和方法 所以可以将一些需要得成员和方法定义在包对象中 便于包的类可以访问package com.dt.scala.oop /* * 包对象 * 作用:包中所有的类就可以访问包对象中所有的成员和方法 */ package object people{ val defaultName = "Scala" } package people { //val defaultName = "Scala" //包中不可以定义成员和方法 class people { var name = defaultName //访问包对象中的成员和方法 } } import java.awt.{Color, Font} //采用{}的方式来,引入包中的部分成员import java.util.{HashMap=>JavaHashMap} //解决scala和Java包命名的冲突,取别名JavaHashMap import scala.{StringBuilder=>_} //采用=>_ 占位符的方式屏蔽 这样就无法访问scala包下的StringBuilder class PackageOps{ } //包的定义可以采用这种链式的定义方式,scala里的包可以嵌套 package spark.navigation { abstract class Navigator { def act } package tests{ //在这里可以做单元用例的测试 class NavigationSuite } package impl { class Action extends Navigator { //实现抽象类的抽象方法 def act = println("Action") } } } package hadoop{ package navigation { class Navigation } package launch{ class Booster { val nav = new navigation.Navigation //通过包hadoop的访问范围,可以访问Navigation类 } } } /** * Scala包的隐式引用 */ import java.lang._ //java.lang包的所有内容 //_表示导入包中的所有的内容 等价于Java中的import java.lang.* import scala._ //scala包中所有的内容 import Predef._ //Predef对象中的所有的内容
转载地址:http://crrub.baihongyu.com/