Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

I denne oppgaven tar vi utgangspunkt i en Person-klasse som har et navn (String) bestående av fornavn ("given name") og etternavn ("family name"). 

Del 1

Definer et grensesnitt Named med innkapslingsmetoder for fornavn, etternavn og fulle navn. 

 

de abstrakte metodene 

  • setGivenName(String) og String getGivenName() for å sette og hente fornavn,
  • setFamilyName(String) og String getFamilyName() for å sette og hente etternavn, og
  • setFullName(String) og String getFullName() for å hente personens hele navn.

Del 2

Lag en Person-klasse som implementerer grensesnittet NamedPerson-klassen kan ha enten ett eller to felter for personnavnet avhengig av hva man finner enklest. Man kan anta at brukere oppretter Person-objekter med gyldige navn, altså trenger man ikke å implementere valideringsmetoder.

 

Del 3

For å kunne sammenligne Named-objekter, f. eks. for å sortere en kontaktliste, kan vi lage en klasse NamedComparator som implementerer grensesnittet Comparator. NamedComparator-objektet skal brukes for å sammenligne navn parvis: Først på etternavn, og deretter på fornavn om etternavnene er like. Dette gjøres ved å implementere metoden int compare(Named named1, Named named2) med følgende logikk: 

  • Dersom etternavnene er ulike skal 

-

--------------------------------

Resten er foreløpig sakset fra Card-oppgaven...

...