Asumsikan satu memiliki koleksi Cat
, dan beberapa referensi objek jenis Animal
, Cat
, SiameseCat
, dan Dog
. Menanyakan koleksi apakah berisi objek yang dirujuk oleh Cat
atau SiameseCat
referensi tampaknya masuk akal. Bertanya apakah itu berisi objek yang dirujuk oleh Animal
referensi mungkin tampak cerdik, tapi itu masih masuk akal. Objek yang dimaksud mungkin, setelah semua, menjadi aCat
, dan mungkin muncul dalam koleksi.
Lebih jauh, bahkan jika objek kebetulan bukan sesuatu yang lain Cat
, tidak ada masalah untuk mengatakan apakah itu muncul dalam koleksi - cukup jawab "tidak, tidak". Koleksi "lookup-style" dari beberapa jenis harus dapat menerima referensi supertipe apa pun secara bermakna dan menentukan apakah objek tersebut ada di dalam koleksi. Jika referensi objek yang diteruskan adalah tipe yang tidak terkait, tidak mungkin koleksi tersebut dapat memuatnya, jadi kueri dalam beberapa hal tidak bermakna (itu akan selalu menjawab "tidak"). Meskipun demikian, karena tidak ada cara untuk membatasi parameter menjadi subtipe atau supertipe, itu paling praktis untuk hanya menerima jenis apa pun dan menjawab "tidak" untuk objek apa pun yang jenisnya tidak terkait dengan koleksi.