이렇게 차 객체가 있고

차의 지붕 상태를 나타내는 enum이 있고

차를 청소해주는 세차기가 있다고 쳐

그러면 세차기는 차의 지붕이 열려있는지 닫혀있는지는 알 수 있어야 하지만 그 상태를 설정할 수는 없어야 되잖음?
그러니까 car의 getRoofStatus만 허용되고 나머지는 건들 수 없는 상태여야 되는데 프로그램 어떻게 짜야함?
사람 객체같은 자율의사 갖는 객체들은 지붕 개폐여부 설정할 수 있으니까 setRoofStatus 접근제어자는 public으로 해야될거같은데