【问题标题】:Can a Scala object be visible to only those objects in the same file?Scala 对象只能对同一文件中的那些对象可见吗?
【发布时间】:2016-10-09 11:27:38
【问题描述】:

是否有访问修饰符 [Edit: 或实现相同目的的惯用解决方法] 这将允许 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 中的所有代码可见。我希望它只对 FooFuz 类可见,而不需要明确的子包来包含此文件。

【问题讨论】:

  • 不是你的问题的答案,但这闻起来很糟糕。我会推荐一种不涉及单例的设计,并且将相同的依赖项注入FooFuzz

标签: scala


【解决方案1】:

不,没有这样的修饰符。

【讨论】:

    猜你喜欢
    • 2012-03-13
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多