下面举个例子
新建几个package如下
TestClass.scala 中的内容如下
package test
private[test] class TestClass {
private var sum = 0
def add(b: Byte): Unit = {
sum += b
}
def checksum(): Int = {
return ~(sum & 0xFF) + 1
}
}
我们在package,testone中创建一个ChecksumAccumulator.scala文件
具体内容如下:
package test.testone
private[testone] class ChecksumAccumulator {
private var sum = 0
def add(b: Byte): Unit = {
sum += b
}
def checksum(): Int = {
return ~(sum & 0xFF) + 1
}
}
下面来测试一下:
我们在testone中创建一个测试文件test1.scala。在里面调用一下
ChecksumAccumulator 和 TestClass
test1.scala的代码如下:
package test.testone
import test.TestClass
object test1 extends App{
val a = new TestClass
println("Test is TestClass ok!")
a.add('c')
println(a.checksum())
val b = new ChecksumAccumulator
println("Test is ChecksumAccumulator ok!")
b.add('d')
println(b.checksum())
}
Test is TestClass ok!
-99
Test is ChecksumAccumulator ok!
-100
我们在testtwo中创建test2.scala文件内容如下:
package test.testtwo
import test.TestClass
object test2 extends App{
val a = new TestClass
println("Test is ok!")
a.add('c')
println(a.checksum())
}
也可以正常打印出,如下内容:
Test is ok!
-99
当我们把代码
val b = new ChecksumAccumulator
println("Test is ChecksumAccumulator ok!")
b.add('d')
println(b.checksum())
放入test2.scala中包如下错误:
not found: type ChecksumAccumulator
我们导入一下import test.testone.ChecksumAccumulator
就会报如下错误:
一上是本人测试的结果,如有问题,还请各位指点,一起,学习进步!