Пожалуйста, ребята, объясните что такое обертка класса, например, в Java! Вот, например, есть значимый тип данных "int" - который 4 байта и может хранить целочисленное число. Я думал что тип "int" это просто самостоятельный тип и когда мы объявляем "интовую переменную" то компилятор просто видит ключевое слово int и понимает что необходимо выделить 4 байта памяти в стеке и положить туда значение. Но у него есть класс обертка Integer - это как? Класс который описывает как должна работать "интовая переменная"? То есть компилятор всегда обращается к этому классу если я объявляю "интовую переменную"?
Ответ
То есть компилятор всегда обращается к этому классу если я объявляю "интовую переменную"
Нет, интовая переменная это просто интовая переменная.
Классы Integer, Long, Double и им подобные обертки для примитивных типов нужны, главным образом, для использования в коллекциях, т.к. коллекции в Java могут работать только со ссылочными типами данных (наследниками класса Object). Т.е. вы не можете объявить, например, список List
Комментариев нет:
Отправить комментарий