4
class EG {
private[this] type TypeMember = A
private[this] var field: Int = 0
}
可以像字段一样为类型成员指定访问修饰符。在OOP的情况下,我们很清楚,领域的encapsulation确实提供了有益于防止意外共享状态和限制状态修改的好处。就我所知,类型成员只能在Scala中找到,而且在很多地方,它们只是被定义为public,因此在字段成员中对类型成员的访问修饰符的使用并不是很好理解。类型成员不像变量或字段那样拥有任何状态。由于它不具有值,因此不能进行变异。 所以我的问题是你应该限制对类型成员的访问的位置是什么(将类型成员定义为私有或受保护的)?什么时候应该对类型成员使用访问修饰符?
以上仅仅是为了说明的目的。它可以是'private [this] TypeMember = A'或'private [this] TypeMember <:A'或'private TypeMember = A'或'protected [this] TypeMember = A''或'protected Type TypeMember = A'只是为了说明一些情况。 –