Wątek przeniesiony 2017-09-05 21:46 z Java przez ŁF.

Pytanie odnośnie metod

2017-09-05 22:56

Rejestracja: 2 lata temu

Ostatnio: 2 lata temu

0

Cześć, jestem początkujący jeśli chodzi o programowanie w java. Mam pytanie odnośnie wywoływania metod. Dlaczego w poniższym kodzie metody obliczWartosc oraz toString zostają wywołane przy stworzeniu i wypisaniu obiektu, natomiast metoda plus już nie? Będę wdzięczny za każdą pomoc. Poniżej kod:

public class test {

    public static void main(String[] args){

        Pozycja p1 = new Pozycja("Chleb", 2, 4);
        System.out.println(p1);
        Pozycja p2 = new Pozycja("Masło", 2, 5);
        System.out.println(p2);

    }
}

class Pozycja {

    private String nazwaTowaru;
    private int ileSztuk;
    private double cena;

    Pozycja(String nazwaTowaru, int ileSztuk, double cena){
        this.nazwaTowaru = nazwaTowaru;
        this.ileSztuk = ileSztuk;
        this.cena = cena;
    }

    public double obliczWartosc(){
        return this.ileSztuk*this.cena;
    }

    public String toString(){
        return nazwaTowaru + "; " + String.format("%.2f",cena) + " zł; " + ileSztuk + " szt; " + 
        String.format("%.2f",obliczWartosc()) + " zł";
    }

    public String plus() {
        return nazwaTowaru;
    }
}
edytowany 1x, ostatnio: furious programming, 2017-09-06 01:35

Pozostało 580 znaków

2017-09-05 22:58

Rejestracja: 5 lat temu

Ostatnio: 4 godziny temu

Lokalizacja: Rzeszów

Bo gdy podajesz nowy obiekt do println to wywoływana jest metoda toString, która u ciebie wywołuje obliczWartosc. Natomiast plus nigdzie nie używasz.

Pozostało 580 znaków

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