Błędny wynik w zadaniu z dziedziczeniem

0

Witam. Mam problem z pewnym zadaniem. Wyświetla mi nieprawidłowy wynik, nie mam pojęcia co w tym kodzie zmienić. Nie ukrywam że moja wiedza o programowaniu w javie jest na poziomie niskim. Jakby ktoś mógł pomóc mi w tym zadaniu byłbym wdzięczny. Podaje zadanie oraz moje wypociny. Podejrzewam że błąd tkwi gdzieś w dziedziczeniu klasy tylko nie mam pojęcia jak to zmienić. Z góry dzięki za pomoc.:

  • Napisz klasę Zamówienie: pola zrealizowane (typu boolean), wartość (typu float); konstruktor: ustawia wartość zamówienia; bezargumentowa metoda zrealizuj, która zmienia wartość pola zrealizowane na true; metoda wypisująca. Przetestuj klasę.

Napisz klasę NoweZamówienie, która dziedziczy z klasy Zamówienie. PRzesłoń metodę zrealizuj, która zmienia wartość pola zrealizowane na true pod warunkiem, że wartość zamówienia jest większa niż 100.**

package javaapplication6;
public class JavaApplication6 {
    public static void main(String[] args) {
NoweZamowienie z = new NoweZamowienie(false,100);
System.out.println(z.zrealizowane);
z.wypisz();


    }
    
}


public class Zamowienie {
    protected boolean zrealizowane;
    protected float wartosc;
    public Zamowienie(boolean zrealizowane, float wartosc){
       this.zrealizowane=zrealizowane;
       this.wartosc=wartosc=10;   
    }
    public boolean zrealizuj(){
        return zrealizowane=true;
    }
    public void wypisz(){
        System.out.println(zrealizowane+" ");
    }
}



package javaapplication6;
public class NoweZamowienie extends Zamowienie {

     NoweZamowienie(boolean zrealizowane, float wartosc) {
        super(zrealizowane, wartosc);
    }
   public boolean zrealizuj(){
       if(wartosc<100)
       return zrealizowane=true;
       else return false;
   }
}
1

Jak patrzę na działanie programu i Twój opis to wydaje się, okej ale:

this.wartosc=wartosc=10;   

na:

this.wartosc=wartosc;

Oraz:

if(wartosc<100)

na wiesz co.
W funkcji main zrealizuj to zamówienie odpowiednią funkcją:

z.zrealizuj();

I jak wypiszesz to jest wtedy 'true'. Czy to nie o to chodziło?

0

AAaa no widzisz teraz działa. Rzeczywiście problemem było złe wywołanie funkcji. Dzięki wielkie za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1