JAVA反射Field

JAVA反射Field,第1张

//直接上例子代码import javalangreflectField;public class Test {

public final int a=5;

public static void main(String[] args) {

Test test = new Test();

try {

Field field = TestclassgetField("a");//指定要获取的字段名

//从Test对象中获取一个整形值;相应的也有getFloat()/getBoolean()等等方法。。详见JDK文档

Systemoutprintln(fieldgetInt(test));

//如果不能确定是什么数据类型可以返回一个Object

Object obj = fieldget(test);

Systemoutprintln(obj);

Systemoutprintln(objgetClass()getName());//获取对象的数据类型

} catch (Exception e) {

eprintStackTrace();

}

}

}

ExtractValuesFromCell 是DataControlField的方法,他是你写的类的父类,此方法可以从一个DataCell中获取返回值,具体你看看msdn吧,没个类型的列都必须实现这个方法以返回列的值

如果是静态变量,即类变量

需要fieldget(这里传Class实例)

如果是对象变量

需要fieldget(这里传对象)

这个参数是必须的,否则get无法确定你要从哪儿获取这个field的值

例子:

Field field = IntegerclassgetDeclaredField("MAX_VALUE");//静态变量

Systemoutprintln(fieldget(Integerclass));//输出2147483647 即IntegerMAX_VALUE

Integer i = new Integer(100);

field = IntegerclassgetDeclaredField("value");//非静态

fieldsetAccessible(true);

fieldget(i);//这里必须用对象

Systemoutprintln(fieldget(i));//输出100

TextField获取输入的数据,可以使用TextFieldgetText()trim();

其中getText()是获得文本,trim()是用来去掉文本前后的空字符的。

TextField的其他 *** 作可以查看JDK提供的API查看。

<script>

function ceshi(field){

    alert(field);

}

ceshi("这是参数");

</script>

不知道是不是这样!

以上就是关于JAVA反射Field全部的内容,包括:JAVA反射Field、asp.net(c#)如何获取GridView控件中BoundField字段的值!、java中的映射Field,如果有个实例field里面只有一个非静态啊字段,用get()获得的时候,为什么要传参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9723025.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存