Spørsmålene på denne siden er forventet at en student skal kunne besvare til eksamen. Det er på ingen måte en definerende liste over pensum, det er fullt mulig å få oppgaver som ikke faller inn under noen av spørsmålene som blir dekket her. Bruk spørsmålene som ekstra hjelp i stedet for en sjekkliste over hva man må kunne til eksamen.
Spørsmål/oppgaver
- Hva er forskjellen på en abstrakt klasse og et grensesnitt?
- Hvilke krav må en subklasse oppfylle for at det skal være naturlig for den å arve fra en superklasse?
- Hvilket nøkkelord brukes for å arve fra en annen klasse i Java?
- Hvor mange klasser kan en subklasse arve fra?
- Du har tre klasser: Human, Person og Student. Student arver fra Person, og Person arver fra Human. Du lager et objekt av hver klasse: human, person, student.
- Har student tilgang til feltene og metodene i Human?
- Hva vil "human
instanceof
Student" returnere? - Hva vil "student
instanceof
Human" returnere?
- Når en subklasse arver fra en superklasse, får den tilgang til konstruktørene til superklassen?
- Når får den eventuelt (ikke) det?
- Forklar hvordan bruk av
protected
-felt/metoder fungerer ved arv. - Kan man instansiere en abstrakt klasse?
- Er det nødvendig å bruke annotasjonen
@Override
når man redefinerer en arvet metode? - Du har arvet en metode fra en superklasse og redefinert den i din egen klasse. Hvordan kan man bruke metoden som var definert i superklassen?
- Du skriver din egen konstruktør i en subklasse, men ønsker å kalle superklassens konstruktør for å slippe å kopiere kode. Hvordan gjør du dette?