It is important that the programmer can decide correctly when to represent entities as indiscernables and when as objects. In this paper we have presented some criteria for this. We discussed them in the context of Java, but they are not limited to that language, and will help programmers using any object-oriented language.