Cześć, mam małą rozkminę i nie daje mi to spokoju. Może to ja czegoś nie rozumiem, może ktoś pomoże ;)
Mam dwie klasy
public class Base {
private Something sth;
public void something() {
sth.setVar(22);
}
}
public class Something {
private int var;
public void setVar(int var) {
if (var > 20) {
throw new Exception("error");
}
this.var = var;
}
}
oraz maina
public class Main {
public static void main(String[] args) {
Base b = new Base();
b.something();
}
}
I teraz pytanie, gdzie lepiej rzucić wyjątkiem. Czy zależy to od czegoś? Równie dobrze mógłbym w metodzie something
to zrobić.. Jest to prosty przykład i może w bardziej zaawansowanej 'apce' mógłbym coś wywnioskować...Czy wyjątek należy rzucać stricte w tej metodzie, gdzie nie może jakaś sytuacja wystąpić, czy może w metodzie sprawdzić czy wartość jest większa od 20 i tam rzucić wyjątkiem?