class EG {
private[this] type TypeMember = A
private[this] var field: Int = 0
}
필드와 마찬가지로 유형 멤버에 대한 액세스 한정자를 지정할 수 있습니다. OOP의 경우 필드의 encapsulation이 의도하지 않은 상태 공유를 방지하고 상태 수정을 제한하는 이점을 제공한다는 것을 잘 이해하고 있습니다. 내가 아는 한 형식 멤버는 스칼라에서만 발견되며 많은 곳에서 멤버로 정의됩니다. 따라서 형식 멤버에서 액세스 한정자를 사용하는 것은 필드의 경우처럼 잘 이해되지 않습니다. 유형 멤버는 변수 또는 필드와 같은 상태를 보유하지 않습니다. 값을 보유하지 않으므로 돌연변이 될 수 없습니다. 내 질문은 형식 멤버 (개인 또는 보호 된 형식 멤버를 정의)에 대한 액세스를 제한해야하는 장소는 무엇입니까? 대신 형의 멤버을 정의 경우타입 멤버에 대한 액세스 한정자는 언제 사용해야합니까?
위의 단지 예시적인 목적이다. 이것은 private [This type typeMember = A' 또는 private [this] type TypeMember <: A' 또는'private type TypeMember = A' 또는'protected [this type] TypeMember = A' 또는'protected type TypeMember = A '는 몇 가지 사례를 설명하기위한 것입니다. –