话说我找了好多文章, 但好像没看过有人在讲这个
可能这问题真的太蠢了所以没人会去讨论 Orz
我想问的是, 像int, float, 都是可以直接把原始资料
用 int a = 1; 的方式下去宣告或执行的
但是 Integer 是属于一个类别, 但他也可以 Integer a =1;
有看到相关的说法是说 在编译的时候
Integer a = 1; 编译器会把他变成 Integer a = Integer.valueOf(1)
那有没有可能我也可以自订一个例如 MyClass 的类别
然后他也可以达成 MyClass a = 1; 这样呢?
谢谢各位前辈.
作者:
darkk6 (Mr. Pan)
2014-12-19 21:08:00这个要去改 compiler 吧...
bleed...key word:operator overloading java
作者: nanashi07 (NaNashi) 2014-12-19 21:24:00
Implicit Conversions?
作者:
popcorny (毕业了..@@")
2014-12-19 21:41:00Integer那个叫做auto boxing/unboxing 是语言层次的东西算是特例。自己写的class无法这样做。
作者:
roder (å°Šé‡ q( ̄︶ ̄)p 包容)
2014-12-19 22:49:00你自订的层级没有系统默认的高阿...
作者:
LPH66 (-6.2598534e+18f)
2014-12-19 22:51:00这在别的语言 (eg. C++) 叫做 operator overloading但 Java 没有这种东西
作者: s3748679 2014-12-19 23:51:00
可以试试看Groovy (推坑
没关系啦,也没有一定要这样做 @@ 只是在宣告上比较方便
作者:
LaPass (LaPass)
2014-12-22 09:42:00C#也有operator overloading,不过java没有
作者:
ssccg (23)
2014-12-22 09:59:00C#有Struct、ValueType,在primitive的处理跟java不太一样不过C#也不能overload =,在这边要用implicit coversion
作者:
wuliou (wuliou)
2014-12-23 00:40:00Java不支援 你可以用C++ XD