【发布时间】:2012-04-24 14:15:30
【问题描述】:
考虑一下:
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 对象参数来代替。
我的想法是您可以使用 Number=1; 而不是 Number=new Number(1),当我扩展 Number 时,我感到非常满意。我只想用对象而不是数字来达到同样的效果。
谢谢。
【问题讨论】:
-
Java 中没有运算符重载。您将其与自动装箱混淆
-
是的,我把它和我从未听说过的东西混淆了……不过我会查一下自动装箱,谢谢。
标签: java generics overloading