2012-08-02 127 views
0

我正在创建一个Class对象以启动一项新活动。但问题是当我输入无法创建“Class”对象

Class ourclass = new Class.__ 

它无法识别类,我不能使用超类“Class”的方法。它说班级是一种原始类型。我应该将它分配给什么类型,因为我想使用“forName()”方法来传递类名。 这里是代码

protected void onListItemClick(ListView l, View v, int position, long id) { 
    // TODO Auto-generated method stub 
    super.onListItemClick(l, v, position, id); 
    try 
    { 
     Class ourclass =Class.__ // The suggestions for static functions doesn't popup, and I get errors 
     //Intent myintent = new Intent(); 
    } 
    catch(ClassNotFoundException e) 
    { 
     e.printStackTrace(); 
    } 

} 
} 

问候。

+0

您需要让JVM为您创建一个类,因为该对象是该类的内部数据结构的代理。 – 2012-08-02 10:22:43

回答

3

我应该将它分配给什么类型,因为我想使用“forName()”方法来传递类名。

Class.forName静态方法 - 你不把它的一个实例:

Class<?> ourClass = Class.forName("foo.bar.Baz"); 

(不管这实际上是恰当与否时开始的活动是一个不同的问题,但是这回答只是地址Class.forName部分...)

+0

好了,所以我直接将Class.forName()作为参数传递给一个函数,正如你所建议的那样,但它仍然给我出现了同样的错误,Type not Resolved .. – 2012-08-02 10:24:18

+0

这听起来不像“class is a raw类型”。请使用* exact *代码和* exact *错误消息编辑您的问题。 – 2012-08-02 10:26:52

0

如果你想使用Class.forName,只需拨打Class.forName(name),不要使用(不存在的)构造函数。 forName是一种静态方法,因此您不需要Class就可以调用它。