Зачем newInstаnce вместо конструктора? В книжках встретил такой подход, вместо конструктора используется статический метод, который возвращает экземпляр класса.class Class1 { public static Class1 newInstance() { return new Class1(); } } Подозреваю, что это какой-то паттерн проектирования? Зачем так делать? Что такой подход даёт? Посоветуйте толковую книгу по этому вопросу (только не с безумной бабой на обложке).