0
방법에 대한 액세스를 제한하고 개체의 작성자 만이 액세스 할 수 있도록 나는 그것의 방법 중 일부에 대한 액세스를 제한하려는 :고유 ID는 내가 객체를
는class RestrictedObject {
private final UUID id;
public RestrictedObject(UUID id) {
this.id = id;
}
public boolean restrictedMethod(UUID anId) {
if (anId.equals(this.id)) {
//do stuff
return true;
} else {
return false;
}
}
}
객체의 생성자는이 작업을 수행 할 것 :
UUID id = UUID.randomUUID();
RestrictedObject o = new RestrictedObject(id);
o.restrictedMethod(id);
이것은 좋은 연습이나 끔찍한 생각입니까?
대체로 더 나은 대안은 개체의 변경 불가능한보기 만 공유하는 것입니다. 예를 들어, 생성자는'obj = new RestrictedObject()'를 수행 한 다음 제한된 객체를 공유 할 때'return new NonModifiableRestrictedObject (obj);를 수행 할 것입니다. 'NonModifiableRestrictedObject'는 제한된 객체를 공유 할 때 제한된 객체를 제외한 모든 메소드를 허용하지 않는 래퍼입니다. 방법. – aioobe