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

  1. Hva er forskjellen på en abstrakt klasse og et grensesnitt?
  2. Hvilke krav må en subklasse oppfylle for at det skal være naturlig for den å arve fra en superklasse?
  3. Hvilket nøkkelord brukes for å arve fra en annen klasse i Java?
  4. Hvor mange klasser kan en subklasse arve fra?
  5. 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.
    1. Har student tilgang til feltene og metodene i Human?
    2. Hva vil "human instanceof Student" returnere?
    3. Hva vil "student instanceof Human" returnere?
  6. Når en subklasse arver fra en superklasse, får den tilgang til konstruktørene til superklassen?
    1. Når får den eventuelt (ikke) det?
  7. Forklar hvordan bruk av protected-felt/metoder fungerer ved arv.
  8. Kan man instansiere en abstrakt klasse?
  9. Er det nødvendig å bruke annotasjonen @Override når man redefinerer en arvet metode?
  10. 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?
  11. Du skriver din egen konstruktør i en subklasse, men ønsker å kalle superklassens konstruktør for å slippe å kopiere kode. Hvordan gjør du dette?
  1. ...
  2. ...
  3. .
  4. .
  5. .
    1. .
    2. .
    3. .
  6. .
    1. .
  7. .
  8. .
  9. .
  10. .
  11. .