monitor Object رو برای گرفتن lockش استفاده میکنیم از اونجایی که هر ابجکتی در جاوا دارایی lock است پس هر ابجکتی در جاوا متیونه یک monitor Object باشه (که البته مسله اصلی همون lock است کلمه monitor object اذیتت نکنه ) اما اینجا ما اومدیم this رو به عنوان monitor Object معرفی کردیم که synchronized قفلی که نیاز داره بگیره که race condition اتفاق نیفته رو از رویه این ابجکت میگیره از طرفی هر ابجکت فقط یک قفل داره پس هیچ thread دیگه ای نمی تونه وارد این بلاک و هیج بلاک Synchronized دیگه ای که به عنوان Monitor Object بهش this رو دادیم و یا متدی که در تعریفش از کلمه synchronized استفاده کردیم که پشت پرده هم اون داره رویه this کار میکنه بشه پس حالا اگه از این رفتار خوشت نمیاد میتونی یک ابجکت بیخود تعریف کنی که Lock اون گرفته بشه