Защищенный объект Scala

В Scala, если я создаю объект и сопутствующий класс, идентификаторы, объявленные с модификатором protected , могут быть доступны из класса, если объект импортирован:

object Foo {
  protected val X = 42
}
class Foo {
  import Foo._
  def getX(): Int = X
}

Однако ] Идентификатор protected недоступен из подкласса класса Foo:

class Bar extends Foo {
  import Foo._
  def getX(): Int = X * 2
}

Я получаю ошибку времени компиляции в Bar .

Other then (подразумевается) public ], есть ли какой-либо модификатор доступа, который я могу разместить на X , чтобы к нему можно было получить доступ из подклассов его компаньона, но не из других классов, включая другие классы в том же пакете?

8
задан Ralph 23 November 2010 в 17:32
поделиться