Tôi cố gắng để gọi phương pháp này trong Java phản tư:Làm thế nào để tôi gọi một phương thức một cách phản xạ bằng null với tư cách là đối số?
public void setFoo(ArrayList<String> foo) { this.foo = foo; }
Vấn đề là tôi muốn vượt qua null như null
, vì vậy foo đó trở thành null.
Tuy nhiên, trong cách tiếp cận sau đó giả định rằng không có đối số, và tôi nhận được IllegalArgumentException
(wrong number of arguments
):
method.invoke(new FooHolder(), null);
// -----------------------------^ - I want null to be passed to the method...
Làm thế nào là thực hiện?
Khi 'varargs' biến thành xấu. – biziclop