Унылого? Пфффф. Чувак, покажи свой код и поговорим.
Геттеры потому что там EditableTerminal extends Terminal - сервисный уровнень доступа, который вы видите. Собственно подсистема нужна для установки блокировки на подсистему при апдейте что бы не лочить весь терминал ибо работа мультипоточная. Для потребителей фабрика выдает immutable Terminal, а для поставщиков EditableTerminal, что бы обеспечить возможность доступа к функциям модификации объектов модели. И потом, геттеры нужны что бы протестить работу фабрики. Знаете как сделать это лучше? Я категорически настаиваю что бы вы поделились этой информацией, потому что тестирование фабрик это один из тех вопросов, который давно интересует меня. К тому же там нет override. Это как бы намекает, что эти геттеры не являются частью публичного интерфейса. Я могу продолжить развивать мысль, что любые методы которые не override имеют право на существование ибо потребитель о них не знает, но чувствую что данный топик меня несколько утомил. Я не жадный на информацию. Просто хочется узнать чего полезного в обмен. А не просто получить кучу какашек.