बहुरूपताओं के कई प्रकार मौजूद हैं (भाषा की प्रकार-प्रणाली में). उदाहरण के लिए,

- टेम्पलेट्स (जिनेरिक),
- सदस्य/ऑपरेटर अतिभार,
- अवपीड़न और
- उप-प्रकार बहुरूपता.

जब कोई ऑब्जेक्ट ओरिएंटेशन के साथ बहुरूपता की बात करता है, तो तात्पर्य अक्सर उप-प्रकार बहुरूपता से है। सिद्धांततः उप-प्रकार बहुरूपता का मतलब है कि ऑब्जेक्ट कई प्रकार के हो सकते हैं। जैसे

क्लास B: पब्लिक A {};

B ऑब्जेक्ट केवल B ऑब्जेक्ट नहीं हैं, वे A ऑब्जेक्ट भी हैं। यह वंशानुक्रम के माध्यम से हासिल हुआ है।

अब आप भी कर सकते हैं,

क्लास C : पब्लिक {};

और उप-प्रकार बहुरूपता की वजह से C ऑब्जेक्ट, A ऑब्जेक्ट भी हैं।

अब स्थिति यह है कि दोनों, C और B ऑब्जेक्ट, A ऑब्जेक्ट भी होने की वजह से उन दोनों को A प्रकार के वेरिएबल भी निर्दिष्ट किए जा सकते हैं। उप-प्रकार बहुरूपता यही निष्पादित करता है। लेकिन यह बिलकुल व्यर्थ होगा, अगर B और C ऑब्जेक्ट एकसमान हों तो. अच्छी बात है यह है कि उनका ऐसा होना ज़रूरी नहीं, क्योंकि अधिभावी की वजह से उनके व्यवहार में अंतर लाया जा सकता है।

अतः उप-प्रकार बहुरूपता के पीछे प्रमुख भाषा तंत्र वंशानुक्रम है (एक वस्तु के कई प्रकार हो सकते हैं). अधिभावी की भूमिका है उप-प्रकार ऑब्जेक्ट द्वारा एक आम सुपर-प्रकार साझा करने को अनुमत करना, ताकि उनका व्यवहार अलग हो.

वंशानुगत-आधारित डिज़ाइन के प्रतिबंध
वंशानुक्रम के अनुप्रयोग
भूमिकाएं और वंशानुक्रम
वंशानुक्रम बनाम उप-प्रकार बहुरूपता