#java #types #constructor #primitive
#java #типы #конструктор #примитив
Вопрос:
Если я правильно понимаю, методы Java могут продвигать типы: например, если параметры метода равны двум целым числам, в вызов можно передать две байтовые переменные, и они будут повышены до целых чисел. Верно ли это для конструкторов? Могут ли две байтовые переменные быть переданы конструктору, параметры которого равны двум целым числам?
Комментарии:
1. Почему бы не попробовать это?
2. Да, вы можете это сделать. Я выяснил это, открыв IDE, введя его и запустив. Не так уж и сложно.
3. Перевернув это с ног на голову: почему не мог ctor действовать примерно так же, как метод в этом отношении? Какая польза была бы от наличия другой семантики?
Ответ №1:
Да, вы можете передавать байтовые аргументы целочисленным параметрам в constructor. То, что при этом происходит, называется расширяющим примитивным преобразованием