是否可以为自己的类实现自动装箱?
为了说明我的例子,这是我可能想写的:
Foo foo = "lolcat";
Run Code Online (Sandbox Code Playgroud)
这就是Java会做的事情(根据我自己的定义,在某个地方,某种程度上),在幕后:
Foo foo = new Foo();
foo.setLolcat("lolcat");
Run Code Online (Sandbox Code Playgroud)
那么,这可能是某种方式,还是仅仅是JVM功能?
小智 12
不,java不支持运算符重载(http://en.wikipedia.org/wiki/Operator_overloading).
Autoboxing是一种编译器功能,不适用于您自己的类.
这里解释了推理:http: //www.cafeaulait.org/javafaq.html#xtocid1902938