Som andre objektorienterte programmeringsspråk , implementerer Java begrepet arv . En klasse kan bli erklært å være en underklasse av en annen klasse (ofte kalt den "overordnede klassen") . Underklassen arver alle metoder fra den overordnede klassen . Hvis underklassen redefinerer en arvelig metode med samme signatur, overstyrer definisjonen i underklassen som i superklassen . Du kan overstyre Java sin innebygde arv mekanisme i koden. Instruksjoner
en
Definer den overordnede klassen i din Java-program , som i følgende eksempelkode : en
public class bankkonto {
private float balanse ;
offentlig bankkonto ( float initialBalance ) {
balanse = initialBalance ;
}
offentlig trekke ( float beløp) {
balanse - = beløp ;
}
}
2
Definer underklasse bruker Java søkeordet " strekker " , som i følgende eksempelkode : en
public class SavingsAccount strekker bankkonto {
}
Som standard vil SavingsAccount ( en bestemt sak av bankkonto ) arve attributtet "balanse ", og de to metodene fra sin overordnede klassen .
3
overstyre en metode ved å erklære den innenfor underklasse med nøyaktig samme signatur som i den overordnede klassen , som i følgende eksempelkode : en
public class SavingsAccount strekker bankkonto {
< p> private int transactionsThisMonth = 0;
offentlig trekke ( float beløp) {
if ( transactionsThisMonth < 6 ) {
balanse - = mengde ;
< p> transactionsThisMonth + +;
}
}
}
den nye versjonen av metoden " SavingsAccount.withdraw ( )" overstyrer arvet metoden " bankkonto . trekke ( ) ", i dette eksempelet , er grunnen til at sparekontoer er underlagt månedlige grenser i antall tillatte transaksjoner . Konstruktøren og "balanse "-attributtet er fortsatt uendret , som arvet fra den overordnede klassen .