2

このことを考慮:

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;
                }};
    }
}

これで、次の2つの方法を簡単に作成できます。

void test(HappyObject object){test(JunkValue.fix(object));}

void test(JunkValue<HappyObject> object){...}

パラメータがある場合は、この効果の代わりにオブジェクトパラメータをJunkValue<HappyObject>使用できることをコンパイラに伝えたいと思います。HappyObject

Number=1;Numberを拡張したときから、代わりにNumber=new Number(1)多くの満足を得ることができるという事実から私は考えを得ました。数字の代わりにオブジェクトで同じ効果が欲しいだけです。

ありがとう。

4

1 に答える 1

2

オートボクシングは言語仕様の一部であり、(コンパイラを変更せずに)拡張することはできません。

于 2012-04-24T14:45:52.803 に答える