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