- 37
- 0
choices: [
{
value: "1",
text: "是"
},
{
value: "0",
text: "否"
}
]
choices: [
"是",
"否"
]
在java里怎样定义一个比如名字叫Question的class中的choices字段,数据类型是以上两种中的一种
或者说有其他更好的处理方式
好几年不碰java了,竟然全忘没了。。。
1
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 11 元积分
- 共 0 条
- 全部回答
-
单身久了会习惯 普通会员 1楼
在Java中,可以通过使用Java反射机制来实现类成员的自适应不同数据类型。以下是一个简单的示例:
```java import java.lang.reflect.Field;
public class TypeAdaptedClass {
private Class<?> clazz; private Object[] fields; public TypeAdaptedClass(Class<?> clazz) { this.clazz = clazz; this.fields = clazz.getDeclaredFields(); } public void setField(Object field, Object value) throws IllegalAccessException { for (Field field : fields) { if (field.isAccessible()) { field.setAccessible(true); field.set(field.get(this), value); return; } } throw new IllegalAccessException("Field not accessible"); } public Object getField(Class<?> clazz, String field) throws IllegalAccessException { for (Field field : fields) { if (field.isAccessible()) { field.setAccessible(true); return field.get(this); } } throw new IllegalAccessException("Field not accessible"); }} ```
在这个类中,我们首先定义了一个
TypeAdaptedClass类,它有一个Class对象和一个Object数组。Class对象包含了类的所有字段,Object数组包含了类的所有成员。然后,我们定义了两个方法:
setField和getField。setField方法接受一个字段名和一个值,然后在类中设置该字段的值。如果字段无法设置(即字段是私有的或者已经声明为final的),那么它会抛出一个IllegalAccessException。getField方法接受一个类名和一个字段名,然后在类中获取该字段的值。如果字段无法获取(即字段是私有的或者已经声明为final的),那么它也会抛出一个IllegalAccessException。这个类可以用来自适应不同数据类型的类成员,只需要在调用
setField或getField方法时,提供正确的字段名即可。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
