У меня есть Java-программа, которая анализирует несколько разных входных файлов. Даже если в этих входных файлах обнаружена ошибка, разбор может продолжаться и собирать еще несколько ошибок. Так что я хочу сделать, а не бросать и исключать и останавливать процесс синтаксического анализа, я хотел бы зарегистрировать исключение где-нибудь, а затем продолжить синтаксический анализ и собрать несколько других ошибок аналогичным образом, а затем, в конце концов, я хочу проверить, любые сообщения об ошибках и отказ или продолжение в зависимости от этого.
Конечно, я всегда могу сделать это вручную, написав ExceptionRegister или любые классы, но я хочу знать две вещи:
1) Есть ли проблема с этим подходом? Знаете ли вы какие-либо альтернативные варианты того, что я хочу делать?
2) Есть ли стандартный способ сделать это? (например, вместо прокатки собственных классов я хотел бы использовать встроенную функциональность, если это возможно)
Спасибо
EDIT: Я не знаю, почему, но кто-то просто удалил его ответ, прежде чем я принял его ответ. Во всяком случае, я думаю, что простые структуры данных должны работать. В принципе, я напишу класс исключения, который собирает несколько сообщений об ошибках. Затем я назову его методом throw, который запускается сам, если он зарегистрировал хотя бы одно сообщение об ошибке.
EDIT2: Вот дополнительные пояснения. Моя проблема не имеет никакого отношения к разбору. Анализ был всего лишь примером, потому что моя программа выполняет синтаксический анализ. Подумайте об этом: я запускаю алгоритм, и в случае ошибки я могу продолжить алгоритм для сбора большего количества ошибок, чтобы вместо того, чтобы печатать одну ошибку и когда она исправлялась, печатая вторую ошибку, я могу вместе печатать две ошибки.