2012-08-02 126 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就可以調用它。