0

オブジェクトを渡したい小さなメソッドと、メソッドが更新する必要があるプロパティがあります。例えば:

public MyModel myMethod(MyModel myObject, MyClassProperty theProperty, String someValue) {
    myObject.theProperty = someValue;
    return myObject;
}

もちろん、このためにメソッドは必要ありませんが、メソッドではさらに多くの処理が行われます。私はそれをその本質に落とし込みました。

オブジェクトのプロパティを更新する必要があるパラメーターとして渡す方法を知っている人はいますか? (言葉で表現するのは少し難しいですが、私の言いたいことを理解していただければ幸いです)

4

1 に答える 1

1

これを試して:

public Object myMethod(Object myObject, String thePropertyName, Object someValue) 
{
    try
    {
        myObject.getClass().getField(thePropertyName).set(myObject, someValue);
    } catch (NoSuchFieldException noFieldException) {
        throw new RuntimeException(noFieldException);
    } catch (IllegalAccessException illegalAccessException) {
        throw new RuntimeException(illegalAccessException);
    }
}

お役に立てれば :)

于 2013-10-09T08:55:33.650 に答える