Scala对象能否仅对同一文件中的那些对象可见?
是否有一个访问修饰符[编辑:或实现相同功能的惯用解决方法]允许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
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