我在一些库中看到过,例如Spray,双包规范是这样的:

package cc.spray
package http

// code

这只是包 cc.spray.http 的眼睛糖果,还是像这样将两者分开是否有功能上的好处?

最佳答案

这相当于:

package cc.spray.http
import cc.spray._
// implicitly, import cc.spray.http._

也就是说,包 cc.spray 和包 cc.spray.http 的每个成员都是可见的。另一方面,包 cc 的成员不可见。

通过这种方式,人们可以安全地在包层次结构中使用诸如 java 之类的名称而不会造成麻烦,同时,可以轻松地使想要可见的包范围可见。

关于scala - Scala中的双重包装声明,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11058286/

10-10 01:05