<prompt> Eleza dhana ya urithi mwingi katika lugha ya programu inayolengwa na kitu.  <response>: Urithi wa aina nyingi ni kipengele katika baadhi ya lugha za programu zinazolenga kitu, ambapo darasa linaweza kurithi sifa na tabia kutoka kwa zaidi ya darasa moja la mzazi au darasa kuu. Hii inamaanisha kuwa darasa linaweza kuwa na aina nyingi za daraja kuu na linaweza kurithi vipengele kama vile mbinu, sifa na sifa nyingine kutoka kwa zote. Hiki kinaweza kuwa zana madhubuti ya kupanga msimbo na kuongeza matumizi tena, kwani unaweza kuunda madarasa yanayochanganya utendakazi wa madarasa mengine mengi. Kwa mfano, tuseme una madarasa mawili, Ndege na Ndege, ambayo yote yana mbinu inayoitwa kuruka. Unaweza kuunda darasa jipya linaloitwa FlyingMachine, ambalo linarithi kutoka kwa Ndege na Ndege, na litakuwa na mbinu ya kuruka ambayo ilirithi kutoka kwa madarasa yake yote mawili ya wazazi. Hata hivyo, urithi mwingi unaweza pia kuanzisha utata na utata, hasa wakati madarasa mawili au zaidi yana mbinu au sifa zilizo na jina moja. Hili linajulikana kama tatizo la almasi, na lugha tofauti zina njia tofauti za kutatua migogoro hii. Lugha zingine, kama vile Python, hutumia mpangilio wa azimio la njia kuamua ni njia gani ya superclass ya kupiga simu kwanza; zingine, kama vile C, zinahitaji mpangaji programu kutaja wazi ni njia gani ya superclass inapaswa kuitwa. Kwa ujumla, urithi mwingi unaweza kuwa zana muhimu kwa muundo wa programu, lakini ni lazima utumike kwa uangalifu ili kuepuka kuleta utata na mkanganyiko. 