Скажем, у меня есть один метод 'position', который берет 2 координаты и создает объект позиции для их удержания. Чтобы убедиться, что эти координаты не выходят за пределы, генерируется исключение InvalidPositionException.
public Position(int x, int y) throws InvalidPositionException {
try {
if (x > 10 || x < 1 || y>10 || y<1) {
throw new InvalidPositionException("Position x = "+x+", y = "+y+" is out of bounds");
} else {
setX(x);
setY(y);
}
} catch (InvalidPositionException e) {
System.err.println(e);
}
}
Если я теперь хочу создать новый объект позиции из другого класса, я получаю сообщение об ошибке «не зарегистрированное исключение InvalidPositionException; должно быть перехвачено или объявлено как выброшенное» *
Как я могу заставить эту работу работать без объявления «бросков» в сигнатуре метода, создающего новый объект позиции?