有没有java对象的属性或方法用变量值代替的语法,就像js一样

var item ={userId:123};

var oldVal = item.userId;

var colId = "userId";

var newVal = item[colId];




像这样,java有没有不用在代码中写死的方法?放在方法名或属性名的位置


bean.get(); 这样代码就写死了

bean.{arg}(); 的话

arg="get"; 那么就是bean.get()

arg="set"; 那么就是bean.set()

用java的语法能做到吗?



对反射的回复 : 我是想在类里写bean.{arg}();然后传入参数arg以达到动态方法名或属性名,反射是在此类的外边对对象方法的任意调用,也就是说从代码级别上达到动态.

无解.

jaca中的反射就是做这个的。

看看java的反射,反射就是干这个事的。