Вопрос

Возможно ли реализовать автобокс для ваших собственных классов?

Чтобы проиллюстрировать мой пример, вот что я хотел бы написать:

Foo foo = "lolcat";

И это то, что Java будет делать (согласно моим собственным определениям, где-то, каким-то образом), под капотом:

Foo foo = new Foo();
foo.setLolcat("lolcat");

Итак, возможно ли это как-то или это только JVM-функция?

Это было полезно?

Решение

Нет, java не поддерживает перегрузку операторов ( http://en.wikipedia.org/wiki/Operator_overloading ).

Автобокс является функцией компилятора и недоступен для ваших собственных классов.

Аргументация объясняется здесь: http://www.cafeaulait.org/javafaq.html#xtocid1902938

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top