views:

227

answers:

1

Is it possible to implement autoboxing for your own classes?

To illustrate my example, this is what I might want to write:

Foo foo = "lolcat";

And this is what Java would do (as per my own definitions, somewhere, somehow), under the hood:

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

So, is this possible somehow, or is it a JVM-feature only?

+8  A: 

No, java does not support operator overloading (http://en.wikipedia.org/wiki/Operator_overloading).

Autoboxing is a compiler feature and not available for your own classes.

The reasoning is explained here: http://www.cafeaulait.org/javafaq.html#xtocid1902938

jiriki
That's not quite correct. Java doesn't support user-generated operator overloading, it supports operator overloading in its classes when it feels like it (STRINGS!)
MetroidFan2002