public class TasonPiste { private static int lkm=0; // luotujen pisteiden laskuri private final int minä; // pisteen yksilöllisyys private double x, y; // koordinaatit public TasonPiste(double x, double y) { this.x = x; this.y = y; ++lkm; minä=lkm; } public int kuka() {return minä;} public void aseta(double x, double y) { this.x = x; this.y = y; } public String toString() { return "("+ minä + ")(" + x+"," + y + ")"; } }Ohjelmoi tälle luokalle aliluokka AvaruudenPiste, joka täydentää tason perittyjä koordinaatteja x ja y kolmannen ulottuvuuden koordinaatilla z. AvaruudenPiste-ilmentymiä luodaan konstruktoreilla:
Ohjelmoi luokkaan AvaruudenPiste vain tarpeelliset osat. Luokkaa TasonPiste ei saa muuttaa.
(17 pistettä)
(16 pistettä)
Muodostettuaan yllä kuvatulla tavalla itselleen sanakirjan ohjelma tarjoaa käännöspalvelun: Kun käyttäjä kirjoittaa sanan alkukielellä, ohjelma joko kertoo sanan käännöksen tai ilmoittaa, että kysytty alkukielinen sana oli tuntematon. Suunnittele ja toteuta itse ohjelman loppuminen.
Jos haluat, voit käyttää (mutta ei ole pakko!) luokan HashMap<K,V> ilmentymää tietorakenteena. Jos et käytä HashMap<K,V>-oliota, voit olettaa, ettei tiedostossa ole enempää kuin 10000 sanaparia. Jos käytät HashMap<K,V>-rakennetta, seuraavasta API-kuvauksen osasta voi olla hyötyä:
public HashMap<K,V>() luo tyhjän Hashtable-olion, joka kuvaa K-tyyppisiä olioita V-tyyppisiksi olioiksi
(17 pistettä)