什么情况下需要多次申请同一个对象锁

“当一个线程拥有这个这个对象 的锁,他就可以多次申请这个锁,但是也必须释放相应次数的锁才能真正释放这个对象锁。”
请问什么情况下,我需要申请同一个锁多次呢, 谢谢!

你进行一个方法中,这个方法里有一个申请锁的块,然后又调用另外一个方法,那个方法又有一个申请锁的块

这样不就两次了

public void first()
{
synchronized(obj)
{
//......
second();
//....
}

}

public void second()
{
synchronized(obj)
{
//....
}

}