Suponga que uno tiene una colección de Cat, y algunas referencias a objetos de tipos Animal, Cat, SiameseCat, y Dog. Preguntar a la colección si contiene el objeto al que hace referencia la referencia Cato SiameseCatparece razonable. Preguntar si contiene el objeto al que hace Animalreferencia la referencia puede parecer dudoso, pero sigue siendo perfectamente razonable. El objeto en cuestión podría, después de todo, ser un Caty podría aparecer en la colección.
Además, incluso si el objeto Catno es un objeto , no hay problema para decir si aparece en la colección, simplemente responda "no, no lo hace". Una colección de "tipo de búsqueda" de algún tipo debería poder aceptar de manera significativa la referencia de cualquier supertipo y determinar si el objeto existe dentro de la colección. Si la referencia de objeto pasada es de un tipo no relacionado, no hay forma de que la colección pueda contenerla, por lo que la consulta no es significativa en algún sentido (siempre responderá "no"). No obstante, dado que no hay forma de restringir los parámetros a subtipos o supertipos, lo más práctico es simplemente aceptar cualquier tipo y responder "no" a cualquier objeto cuyo tipo no esté relacionado con el de la colección.