[ kuki87 @ 07.10.2009. 11:53 ] @
kao sto naslov kaze treba mi pomoc , ja sam uradio zadatak, dobro je to sve samo sam trebao uradit izuzetak a to ne znam nikako. Dole cu postaviti text zadatka i kod koji sam ja uradio pa ko moze nek mi pomogne

Treba napisati klasu Lift koja opisuje ponasanje lifta u nekoj zgradi. Jedan od atributa je br spratova, a drugi je kapacitet lifta. Lift se na pocetku nalazi u prizemlju (0 sprat) i u njemu nema putnika. Obezbediti sledece metode:

void popniSe(int k) - lift se penje za k spratova: ako bi presao preko zadnejg sprata proizvesti izuzetak ->e ovaj izuzetak kao i sve ostale ne znam uraditi

void spustiSe (int k) - lift se spusta za k spratova. Ak oide ispod nultog sparta isto treba izuzetak sprovesti

void ulazi (int k ) ulazi k putnika. Ako udje preko dozvoljenog isto treba izuzetak

void izlazi (int k) izlazi k putnika. Ako izadje vise nego sto je bilo treba izuzetak

void gdeJe na kojem se speatu nalazi lift

void brojPrutnika vraca br putnika u liftu

evo link ka zadatku sto sam uradio

http://docs.google.com/Doc?doc...cmMycjlfMmZmM2RzZ2Zu&hl=en
[ bantu @ 07.10.2009. 12:34 ] @
Možeš ovako. Napravi novu klasu za tvoj izuzetak:

Code:

public class LiftException extends Exception {
    
    public LiftException(String message){
        super(message);
    }
}


Nakon toga u metodi u kojoj vršis operacije nad liftom "baciš" izuzetak koji kasnije možeš da "uhvatiš" i obradiš u klasi iz koje pozivaš metodu. npr.

Code:

    public void spustiSe (int k){
        if (currSprat-k < 0) throw new LiftException("Ne moze se spustiti za toliko spratova.");
        currSprat=currSprat-k;
    }
[ del-boy @ 07.10.2009. 13:34 ] @
Treba i u potpisu metode da napišeš da baca exception. Znači ovako bi izgledala metoda (samo modifikovana bantu-ova):
Code:

    public void spustiSe (int k) throws LiftException {
        if (currSprat-k < 0) throw new LiftException("Ne moze se spustiti za toliko spratova.");
        currSprat=currSprat-k;
    }


Posle kad pozivaš tu metodu ovako bi izgledalo:

Code:

try {
    prvi.spustiSe(4);
}
catch (LiftException e) {
    System.err.println("Greska: " + e.getMessage());
}


Analogno za sve ostale metode...
[ kuki87 @ 07.10.2009. 14:10 ] @
Hvala obojici resio sam i radi