考虑一下:
public static abstract class JunkValue<X>{
public abstract X value();
public static <X> JunkValue<X> fix(final X x){
return new JunkValue<X>()
{
@Override
public X value() {
return x;
}};
}
}
现在我可以轻松地实现这两种方法:
void test(HappyObject object){test(JunkValue.fix(object));}
void test(JunkValue<HappyObject> object){...}
我想告诉我的编译器,如果我有 JunkValue<HappyObject>
参数我可以只使用 HappyObject
object 参数来代替这个效果。
我从你可以做的事实中得到了这个想法 Number=1;
而不是Number=new Number(1)
当我扩展 Number 时,我得到了很大的满足。我只想用对象而不是数字获得相同的效果。
谢谢。
最佳答案
自动装箱是语言规范的一部分,无法扩展(不更改编译器)
关于java - 可以自动重载吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10299793/