Здравствуйте, netch80, Вы писали:
N>Там, где можно вызвать конструктор в виде явного конструктора, можно вызвать и что-то вроде public static Button make(), которое само вызывает конструктор (возможно, объявленный private, чтобы не показывать незавершённое состояние), вызывает нужные методы и возвращает готовый результат. Такой себе конструктор, не выглядящий синтаксически как конструктор. (В родной библиотеке Java есть множество методов с неинтуитивным названием valueOf(), которые делают что-то похожее.) После этого специфика потрохов будет скрыта только внутри данного класса и его потомков, которые должны будут отразить специфику такого формирования у себя, но не у пользователей.
А по моему это называется Фабрика? Не?
Ну в том смысле что конструктор у нас private, и никак создать объект, кроме как этим фабричным методом не выйдет. А он де факто берет на себя помимо создания еще и всю нужную дополнительную инициализацию...