...
Definer et grensesnitt Named med metodene de følgende 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 å sette og hente personens hele navn.
Del 2
Lag en Person-klasse som implementerer grensesnittet Named. Person-klassen kan ha enten ett eller to felter for personnavnet avhengig av hva man finner enklest. Man kan anta at brukeren 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 kan gjøres ved å la NamedComparator-klassen implementere metoden int compare(Named named1, Named named2) med følgende logikk:
...