Чем отличаются методы от конструкторов в java? Для чего нужно то и другое?
Конструктор предназначен для создания экземпляра класса (объекта) при помощи ключевого слова new и могут иметь имена только совпадающие с именем класса.
Методы выполняют операции данными как для существующих объектов, так и без создания объекта вовсе (статические методы).
Из конструкторов нельзя ничего возвращать, т.к. по сути они уже возвращают объект класса. Методы должны возвращать хотя бы void.
Главное отличие между конструкторами и методами в том, что конструкторы инициализируют объекты, создаваемые с помощью оператора new, в то время как методы выполняют операции с уже существующими объектами.
Конструкторы не могут быть вызваны напрямую; они вызываются когда объект создается с помощью ключевого слова new. Методы же, могут быть вызваны напрямую у объекта, который уже был создан.
Определение конструкторов и методов похожи. Они могут принимать параметры, иметь модификаторы (т.е. public), а так же имеют тело которое будет выполняться.
Конструкторы могут иметь только имя совпадающее с именем класса. Из них нельзя ничего возвращать, даже void, так как на самом деле они уже возвращают новый объект.
Методы должны что-то возвращать, хотя бы void.
перевод ответа @rgettman
Конструктор вызывается при создании объекта.метод вы можете вызвать после,к создоному объекту.
Продвижение своими сайтами как стратегия роста и независимости