title: Java lock concept how internally works?
body: <p>"Every instance of class <code>Object</code> (and its subclasses) possesses a lock that is obtained on entry to a <code>synchronized</code> method and automatically released upon exit"</p>
  
  <p>Does this mean that any object instance we create has a "lock" by default internally (implemented as a field)?</p>
  
  <p>I have got confused with this "lock" concept, I want to know what it actually does internally.</p>
  
  <p>Could anyone direct me to some places where I can find more info?</p>