2013-04-10 104 views
2

在Java中没有像i C++这样的操作符重写,所以我无法弄清楚如何为我自己的类实现装箱/拆箱。如何在自己的课堂中实现装箱和拆箱?

例如它的不可能性使用装箱和拆箱使用整数或浮点数当我们这样做有些事情是这样的:

int myVar = new Integer(25); 

但我怎么能实现在我的课为MyObject类似的东西? (在我想自己包装原始类型的情况下)。有没有代码示例?

+0

不可能以这种方式,相反,您可以拥有这种功能的包装类。 – Ankit 2013-04-10 07:27:16

+0

查看http://stackoverflow.com/questions/6464782/is-it-possible-to-define-custom-types-in-java-that-work-with-primitives – 2013-04-10 07:28:53

回答

4

没有办法为用户定义的类实现自动装箱和自动拆箱。

您当然可以提供指定的方法来完成这项工作。但是,每次需要打开或取消装箱时,您都必须明确地打电话给他们。

0

不可能为自己的类实现自动装箱和拆箱 - auto(un)装箱是一种语言功能,在Java编译器中实现。

0

自动装箱或拆箱仅适用于原语的Java 像长

Integer for int 

但用户defiend不可能Long包装类,

最好你能做到的构造函数初始化像

Myclass m=new Myclass(100);