Arv är ett av nyckelbegreppen inom programmering objektorienterad. Tillåter en klass att ärva egenskaperna och metoderna för en annan klass.
Enkelt arv
Enkelt arv är när en klass bara ärver egenskaper och metoder från en överordnad klass. Föreställ dig att du har en föräldraklass som heter "Djur" och en barnklass som heter "Hund". Klassen "Hund" skulle ärva metoderna och egenskaperna hos klassen "Animal", som "äta", "sova", "andas", bland annat.
multipelt arv
Multipelt arv är när en klass ärver egenskaper och metoder från mer än en överordnad klass. Med andra ord kan en barnklass ha flera föräldraklasser. Denna typ av arv är möjlig i vissa programmeringsspråk som C++, men inte i andra som Java.
Varför är inte multipelt arv tillåtet i alla programmeringsspråk?
Multipelarv kan leda till oklarhetsproblem. Med andra ord, om två överordnade klasser har metoder eller egenskaper med samma namn, kanske det inte är klart vilken av dessa metoder eller egenskaper som ska användas för den underordnade klassen. Av denna anledning tillåter vissa programmeringsspråk inte flera arv.
Lista över programmeringsspråk som stöder flera arv:
- C + +
- Python
- Rubin
Lista över programmeringsspråk som INTE stöder multipelt arv:
- java
- C#
- PHP
Sammanfattningsvis är enkelt arv och multipelt arv två nyckelbegrepp inom objektorienterad programmering. Enstaka arv innebär att en barnklass endast kan ärva egenskaper och metoder från en förälderklass, medan multipelarv innebär att en barnklass kan ärva egenskaper och metoder från mer än en förälderklass. Det är viktigt att notera att inte alla programmeringsspråk tillåter multipelt arv på grund av möjlig tvetydighet i metoder och egenskaper.
Se till att du förstår skillnaden mellan dessa två nyckelbegrepp inom objektorienterad programmering!
Jag är Sebastián Vidal, en dataingenjör som brinner för teknik och gör-det-själv. Dessutom är jag skaparen av tecnobits.com, där jag delar självstudier för att göra tekniken mer tillgänglig och begriplig för alla.