菜鸟提问:java可以动态转换类么

如题,例如: public void a(List list,类名或者其他 mark) 这个list 元素 取出来 根据传进来的 mark来转换成mark相应的 对象

[b]问题补充:[/b]
我说的意思就是 Object ele=(Object)list.get(0); 我这个ele 通过传入mark 的不同 强制转换成mark的对象 类似: mark a=(mark)ele .我觉的 我说的还算明白了
[b]问题补充:[/b]
晕 那如果 我每个list 包含 object[] 你怎么用泛指啊 泛指只能指定一个object
[b]问题补充:[/b]
用class 不行的 你不可以试下 可以的话 贴下代码 , 我的要求是 如果说一个bean 里面有个print()方法 mark a=(mark)ele a.print()可以调用就成
[b]问题补充:[/b]
貌似要用到反射 但看了下 觉的很麻烦 有没有什么简单的方法 谢谢

没办法的,你是要运行时得到实际的类型,编译期却不知道对象的类型,那就不能正常的一般化调用方法,

不是很清楚你所说的动态转换类

看:
[url]http://topic.csdn.net/t/20041106/10/3527170.html[/url]

java当然可能做到

而且现在java有泛型之后,强制转换不用你来做,编译器就帮你做了

public void a(List<类名> list)

那你就可以以你说的那种方式来处理的,传类实例吧

比如
public void a(List list,Class c)

这样调用方法当然是不行的

你只能以反射的方式得到这个类的方法,然后再以反射调用