Witam,
Mam problem z zdefiniowaniem metody getCennik() w klasie Cennik ktora stworzylem. Kod klasy wyglada nastepujaco:
class Cennik{
Hashtable ceny;
public Cennik(){
ceny=new Hashtable();
}
public void getCennik(){
}
public void set(String s,double d){
ceny.put(s, new Double(d));
}
}
Metoda ta musi byc zdefiniowana w ten sposob aby mogła być wykorzystana w klasie sklep :
class Sklep {
private Kasa kasa;
Sklep() {
// Na poczatku dnia ustalany jest cennik
// i otwierana jest kasa
Cennik cennik = Cennik.getCennik();
cennik.set("Truskawki", 5);
cennik.set("Banany", 6);
cennik.set("Agrest", 7);
kasa = new Kasa();
}
public void zakupyDemo(String osoba) {
// Podana osoba wchodzi do sklepu i bierze koszyk
// Każdy koszyk ma swój numer
// Liczba koszyków jest nieograniczona
Koszyk koszyk = new Koszyk();
System.out.println(osoba + " bierze " + koszyk);
// Dodaje do koszyka kilo truskawek
// pol kilo bananow, cwierc kilo agrestu
// i 2 kilo mandarynek
koszyk.add(new Truskawki(1));
koszyk.add(new Banany(0.5));
koszyk.add(new Agrest(0.25));
koszyk.add(new Mandarynki(2)); // dziwnym trafem sprzedawca zapomnial
// ustalic ich ceny, ale kupujacy o tym nie wie
// podchodzi do kasy
// pokazuje zawartość koszyka
// a kasa go rozlicza wg ustalonego cennika
koszyk.showContent();
kasa.printBill(koszyk); // wydruk rachunku
// placi i ...
// przeklada zawartosc koszyka do torby
Torba torba = new Torba(osoba);
torba.loadFrom(koszyk);
// Przychodzi do domu i pokazuje co kupil(a)
torba.showContent();
}
}
Problem mam dokladnie w tym miejscu:
Cennik cennik = Cennik.getCennik();
Probowalem cos wymyslec ale ciagle dostaje jakies bledy. Czy moglby ktos wytlumaczyc mi jak powinna byc zdefiniowana ta metoda getCennik() lub naprowadzic na rozwiazanie problemu ?
Na koniec podam klase testujaca:
// Klasa testująca klasę Sklep
class Test {
public static void main(String[] args) {
Sklep s = new Sklep();
s.zakupyDemo("Janek");}}
Pozdrawiam