定义一个Money类,String denomination(面额),double value
实例化得到对象yibai,可不可通过String字符串"yibai"获得对象yibai,从而读取其属性?
Java中,可不可通过String字符串获得同名对象
答案:6 悬赏:80
解决时间 2021-11-08 18:02
- 提问者网友:纹身骑士
- 2021-11-08 05:42
最佳答案
- 二级知识专家网友:安稳不如野
- 2021-11-08 06:57
这个看你怎么设计了。
1.通过反身的方法。
2.用一个类来管理 类的集合。通过固定的方式来取得。
3.工厂模式。
1.通过反身的方法。
2.用一个类来管理 类的集合。通过固定的方式来取得。
3.工厂模式。
全部回答
- 1楼网友:开心就好
- 2021-11-08 11:42
复杂一点估计就是反射机制了,简单一点的话,放在MAP中 ,通过KEY值取对象!
不知道你的程序适用不!
- 2楼网友:爱情是怎么炼成的
- 2021-11-08 11:03
本例中,不需要反射。
通过名字调用实例后的对象,只要判断名称(这里是denomination)相同,即可以了。
List list=..............
list.add(new Monty("yibai", 100));
for(Money money : list){
if("yibai".equals(money.getDenomination())){
//一百面额的
}
}
- 3楼网友:你好陌生人
- 2021-11-08 09:44
少年,好好看看反射机制,这里用发射最合理,百度一下:java reflect ,一切ok
- 4楼网友:厌今念往
- 2021-11-08 08:19
不能,反射的话可以通过money这个类名获得这个类的对象,通过yibai是不行的,因为内存中yibai只是一个引用。
- 5楼网友:厭世為王
- 2021-11-08 07:37
实例化得到对象yibai,实例化一个moneyMap对象。moneyMap以键值对的形式存储yibai对象
Map moneyMap = new HashMap;
Money yibai = new Money("100",100.0);
moneyMap.put("yibai",yibai);
再通过key值"yibai"获得对象yibai,至于怎么获取就不用多说了吧!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息