Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala对象能否仅对同一文件中的那些对象可见?_Scala - Fatal编程技术网

Scala对象能否仅对同一文件中的那些对象可见?

Scala对象能否仅对同一文件中的那些对象可见?,scala,Scala,是否有一个访问修饰符[编辑:或实现相同功能的惯用解决方法]允许Scala名称/对象对同一文件中的所有代码可见,但不允许该文件所属的整个包可见 package org.example.foo private object SharedStuff { val bar = 0 } class Foo { def apply(x: Int): String = ... something involving SharedStuff.bar ... } class Fuz { def f

是否有一个访问修饰符[编辑:或实现相同功能的惯用解决方法]允许Scala名称/对象对同一文件中的所有代码可见,但不允许该文件所属的整个包可见

package org.example.foo

private object SharedStuff {
  val bar = 0
}

class Foo {
  def apply(x: Int): String = ... something involving SharedStuff.bar ...
}

class Fuz {
  def fuzz(t: String): Int = ... something else involving SharedStuff.bar ...
}

在其当前状态下,对象
SharedStuff
将对包
foo
中的所有代码可见。我希望它只对类
Foo
Fuz
可见,而不使用显式子包来封装此文件。

不,没有此类修改器

不,没有这样的修饰语

这不是你问题的答案,但闻起来很难闻。我会推荐一种不涉及单例的设计,同样的依赖被注入到
Foo
Fuzz
中,这不是对你问题的回答,但这闻起来很糟糕。我会推荐一种不涉及单例的设计,同样的依赖关系会被注入
Foo
Fuzz