java - Why warning when trying to reflection on empty argument function -


i trying use reflection call funca() of class clsa. eclipse juno showing warning in testa class remark warning (a) shown below.

the clsa this:

public class clsa {    string vara;     ...    ...     private string funca() {       return vara;    } } 

this code use reflection call on funca():

public class testa {     public static void main(string[] args) {       clsa clsa = new clsa();        class noparam[] = {};       method funca;       string retstr;        funca = clsa.class.getdeclaredmethod("funca", noparam);       funca.setaccessible(true);       retstr = (string) funca.invoke(clsa, null); // warning (a)    } } 

and warning get. don't understand message warning trying bring? how explicitly cast null?

the argument of type null should explicitly cast object[] invocation of varargs method invoke(object, object...) type method. alternatively cast object varargs invocation

there can 2 types of method invocation, 1 call fixed argument, other call variable arguments.

if providing null argument, not clear java whether method variable parameters or no parameter @ (as variable parameters may accept no agrument).

so asks mention explicitly (object[])null or (object)null, if don't want provide argument.

invoking methods


Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

c++ - qgraphicsview horizontal scrolling always has a vertical delta -