1. Selvitä esimerkkien avulla, mitä tarkoittavat käsitteet
(a) korvaavuusperiaate
(b) tunnisteen dynaaminen tyyppijoukko
(c) yhden valinnan periaate
(d) erikoistulkinta
2. Rutiini voi päättyä paitsi normaalisti, myös
virhetilanteeseen. Analysoi miten kutsujalle ilmoitetaan eri
tilanteista ja miten sopimuspohjaisuus ja poikkeukset nivoutuvat
kokonaisuuteen.
3. Luokka Työntekijä perii
luokalta Henkilö
piirteet nimi, osoite,
henkilötunnus ja syntymävuosi
sekä
esittelee omat piirteensä ammattinimike,
palvelukseentulovuosi
ja kkPalkka. Tehtävänäsi
on kirjoittaa yhtiötä mallintavaan
luokkaan rutiini, joka lajittelee kaikki työntekijät ensisijaisesti
nimen mukaan nousevaan järjestykseen ja toissijaisesti (siis
samannimiset työntekijät) palvelukseentulovuoden mukaan laskevaan
järjestykseen.
4. Toteuta luokka Tili, joka kuvaa
kirjanpidon
tilikäsitettä. Tarpeellisia operaatioita ovat ainakin pano,
nosto, saldo
ja viimeisetTapahtumat. Kaikki
panot ja otot on
talletettava tilin yhteyteen siten, että tilitapahtumat voidaan
milloin tahansa käydä läpi aikajärjestyksessä
(viimeisetTapahtumat saa argumenttinaan
kokonaisluvun k, joka
ilmaisee kuinka monta viimeistä tapahtumaa halutaan). Tilitapahtumaa
ei voi
jälkikäteen pyyhkiä pois. Tilillä oleva saldo on
voitava selvittää
käymättä tilitapahtumia läpi. Saldo ei saa mennä
negatiiviseksi.
5. Toteuta Tili-luokan perijä
Luottotili, jossa on
luottorajaan kohdistuvat operaatiot annaLuottoraja
ja
asetaLuottoraja. Tililtäottojen
yhteydessä saldo voi mennä
luottorajan verran negatiiviseksi. Mieti tarkkaan kuka saa asettaa
luottorajoja ja miten sitä kontrolloidaan.