我在使用Android进行投射时遇到问题。
我正在开发一个处理多个设备的应用程序,我正在尝试进行动态类位置(即,用户根据用户设置设置设备和应用程序实例化)
以下是示例代码:
String Usr_imput; //name of the class
Class class = Class.forName(Usr_Input);
Object o = class.newInstance();
因为我无法访问Usr_Input类中的方法。方法class.cast(o)应该是我的问题的解决方案,但我不能让它工作,cast语句堆栈?
如果我使用的话,是不是可以工作:
class.cast(o);
o.Method();
任何人都有相关经验吗?
答案 0 :(得分:0)
Usr_Input o = (Usr_Input)class.newInstance();
答案 1 :(得分:0)
来自java doc:
cast
public T cast(Object obj)
blahblah..
Returns:
the object after casting, or null if obj is null
从您的代码中,您没有捕获返回值。 class
也不是一个好名字。检查上面的评论。
class.cast(o);
o.Method();