En Scala, si creo una clase de objeto y compañero, los identificadores declarados con el modificador de protected
se puede acceder desde la clase si se importa el objeto:Scala protegida objeto
object Foo {
protected val X = 42
}
class Foo {
import Foo._
def getX(): Int = X
}
Sin embargo, el identificador de protected
no puede ser se accede desde una subclase de la clase Foo:
class Bar extends Foo {
import Foo._
def getX(): Int = X * 2
}
me sale un error en tiempo de compilación en Bar
.
Otros (implícitos) public
, ¿hay algún modificador de acceso que pueda ubicar en X
para que se pueda acceder desde las subclases de su acompañante, pero no desde otras clases, incluidas otras clases en el mismo paquete?
Sólo un pequeño problema: la subclase no siempre está en el mismo paquete. – Nicolas