Подчинять примитивный int к числу
Вопрос
Допустим, у меня есть следующее:
int a = 2;
Number b = (Number) a;
System.out.println(b); // Prints 2
http://java.sun.com/docs/books/jls/first_edition/html/15.doc.html#238146 Говорит, что примитивное значение не может быть привлечено к ссылочному типу. Знает ли Java создать целое число из примитивного Int, а затем бросить в суперкласс? Как именно Java справляется с этим за кулисами? Спасибо!
Решение
Процесс называется Автобоксинг. Анкет Короче говоря, компилятор видит, что обертка (Integer
) а не примитив (int
) необходим и автоматически добавляет преобразование. И на самом деле ваш актерский состав Number
не обязательно.
Не связан с StackOverflow