자바 모니터 패턴은 단순한 관례에 불과하며 일정한 형태로 스레드 안전성을 확보할 수 만 있다면 어떤 형태의 락을 사용해도 무방하다.
public class PrivateLock {
private final Object lock = new Object();
private MyData data;
public void something() {
syncronized(lock) {
// data...
}
}
}