ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (ओओपी) में विरासत
इनहेरिटेंस ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (ओओपी) में एक तंत्र है जो एक वर्ग को दूसरे वर्ग से गुण और व्यवहार प्राप्त करने की अनुमति देता है। जिस वर्ग से विरासत प्राप्त की जा रही है उसे "सुपरक्लास" या "मूल वर्ग" कहा जाता है, जबकि जो वर्ग विरासत प्राप्त कर रहा है उसे "उपवर्ग" या "बाल वर्ग" कहा जाता है।
एक उत्तराधिकारी एक उपवर्ग है जो गुणों और व्यवहार को विरासत में प्राप्त करता है एक सुपरक्लास. दूसरे शब्दों में, एक उत्तराधिकारी एक ऐसा वर्ग है जो किसी अन्य वर्ग की विशेषताओं और विधियों को विरासत में लेता है। उदाहरण के लिए, मान लें कि हमारे पास दो वर्ग हैं: `कार` और `स्पोर्ट्सकार`। `कार` वर्ग में `रंग`, `मेक`, और `मॉडल` जैसी विशेषताएं हैं, और `ड्राइव()` और `ब्रेक()` जैसी विधियां हैं। 'स्पोर्ट्सकार' वर्ग को ये सभी विशेषताएँ और विधियाँ 'कार' वर्ग से विरासत में मिली हैं, लेकिन इसमें कुछ अतिरिक्त विशेषताएँ और विधियाँ भी हैं जो स्पोर्ट्स कारों के लिए विशिष्ट हैं। तो, `स्पोर्ट्सकार` वर्ग `कार` वर्ग का उत्तराधिकारी होगा। विरासत हमें कोड का पुन: उपयोग करने और दोहराव से बचने की अनुमति देती है। कई वर्गों में समान विशेषताओं और विधियों को परिभाषित करने के बजाय, हम उन्हें एक बार सुपरक्लास में परिभाषित कर सकते हैं और सभी उपवर्गों को उनका उत्तराधिकारी बना सकते हैं। यह हमारे कोड को अधिक कुशल और बनाए रखने में आसान बनाता है।