Yes.
Since you are synchronizing your Phone
instance, this is possible. Another thread may delete the same Phone
object from the ArrayList
. But the Phone
link will point to the same instance.
So that no other thread can access your list from another place, synchronize in the list itself -
synchronized(phoneList) {
source share