Käytössäsi on luokka Kokonaislukujoukko, jonka "API" on
seuraavanlainen:
- public Kokonaislukujoukko(int kapasiteetti)
luo tyhjän Kokonaislukujoukko-olion, jossa oletusarvoisesti
on varauduttu parametrina annettuun joukon kokoon
- public boolean lisää(int alkio)
lisää joukkoon alkion, ellei se jo ollut siellä;
palauttaa true, jos todella lisättiin, palauttaa arvon false, jos
alkio jo oli joukossa
- public boolean poista(int alkio) poistaa joukosta alkion,
jos se siellä sattui olemaan;
palauttaa true, jos todella poistettiin, palauttaa arvon false, jos
alkiota ei edes ollut jo joukossa
- public boolean kuuluu(int alkio)
palauttaa true, jos alkio kuuluu joukkoon ja
palautta arvon false, jos alkio ei kuulu joukkoon
- public int koko() joukon koko (eli joukon alkioiden
lukumäärä)
- public int[] toIntArray()-metodi palauttaa arvonaan
kokonaislukutaulukon, joka sisältää täsmälleen kaikki joukon alkiot
- public String toString()-metodi tuottaa joukosta
String-esityksen tyyliin
{-3, 1, 76}
Mitään muuta et tiedä
luokan Kokonaislukujoukko rakenteesta tai toteutuksesta!
Ohjelmoi luokalle Kokonaislukujoukko aliluokka
KokonaislukujoukkoPlus, jonka "API" on seuraavanlainen:
- public KokonaislukujoukkoPlus()
luo tyhjän KokonaislukujoukkoPlus-olion, jossa oletusarvoisesti
on varauduttu 100 alkion kokoisiin joukkoihin
- public KokonaislukujoukkoPlus(int kapasiteetti)
luo tyhjän KokonaislukujoukkoPlus-olion, jossa oletusarvoisesti
on varauduttu parametrina annettuun joukon kokoon
- public KokonaislukujoukkoPlus yhdiste(KokonaislukujoukkoPlus b)
palauttaa arvonaan joukon, joka sisältää kaikki this-joukon
ja joukon b alkiot
- public KokonaislukujoukkoPlus leikkaus(KokonaislukujoukkoPlus b)
palauttaa arvonaan joukon, joka sisältää täsmälleen kaikki alkiot, jotka
kuuluvat sekä this-joukkoon että joukkoon b
- public KokonaislukujoukkoPlus erotus(KokonaislukujoukkoPlus b)
palauttaa arvonaan joukon, joka sisältää kaikki this-joukon
alkiot, jotka eivät kuulu joukkoon b
Havainnollista erillisellä pääohjelmalla kaikkien
KokonaislukujoukkoPlus-luokan operaatioiden, myös perittyjen,
käyttöä.
(12 pistettä)