Witam forowiczów, problem tkwi w tym że nie wiem jak przepełnić, by dodać do tego wyjątek, siedzę na tym 3 godzinę. W javie jestem trochę zielony, a zgaduje że ktoś od razu wie co gdzie jak, mógłbym prosić o wskazówkę?
Treść zadania:
zmodyfikuj tak, aby w funkcji main można było przechwytywać wyjątki przepełnienia
(próba dodania, gdy liczba elementów w kolejce wynosi N) i niedomiaru kolejki
(próba pobrania elementu kolejki, gdy liczba elementów w kolejce wynosi 0):
public class Kolejka {
static final int N = 5;
private Object[] tab;
private int pocz, zaost, lbel;
public Kolejka() {
pocz = 0;
zaost = 0;
lbel = 0;
tab = new Object[N];
}
void doKolejki(Object el) {
tab[zaost] = el;
zaost = (zaost+1) % N;
++lbel;
}
Object zKolejki() {
int ind = pocz;
pocz = (pocz+1) % N;
--lbel;
return tab[ind];
}
}
== MAIN ==
import java.util.InputMismatchException;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executor;
public class Main {
public static void main(String[] args) {
Kolejka k = new Kolejka();
try {
k.doKolejki(new Integer(3));
k.doKolejki(new String("Ala ma kota"));
k.doKolejki(new Double(3.14));
for (int i = 1; i <= 2; i++)
System.out.println((k.zKolejki()).toString());
}
catch (NullPointerException e) {
System.out.println("Przepelniona kolejka!");
}
catch (ArrayIndexOutOfBoundsException e) {
System.out.println("Pusta kolejka!");
}
}
}