2011-11-05 119 views
1

作業分配要求我通過實現java.util.Collections來創建Java數據包數據結構。行李數據必須存儲在一個數組中。我似乎無法讓我的類方法訪問我給每個對象在類中的數組。無法從類方法訪問對象變量(Java)

下面的代碼給我的問題:

import java.util.*; 
import java.lang.*; 

class Bag<T> implements Collection<T> { 

//MAIN METHOD/////////////////////////////// 

public static void main(String[] args) { 

Bag<Integer> bravo = new Bag<Integer>(); 

System.out.println(bravo.size()); 

}/////////////////////////////////////////// 


//CONSTUCTOR/////////////////////////// 
public Bag() { 

T[] bagarray = (T[])new Object[10]; 

} 
/////////////////////////////////////// 


//METHODS///////////////////////////////////////////////////////////////////////////////// 

public int size() { 

int temp; 

temp = bagarray.length; 

return temp; 

} 

編譯過程中,我給出了一個bagarray錯誤cannotfindsymbol。然而,在執行完全相同的操作之前,我已經編寫了代碼。

它必須是一些微小的細節,但我一直在這個問題上絞盡腦汁。 我哪裏錯了?

+1

那些斜槓;流。 –

回答

4

該數組應該是一個實例變量;它目前是構造函數中的本地對象。

+0

非常感謝,在回顧我之前的計劃時,你的建議是確切的問題。 – mybrainisawaffle

2

局部變量聲明:

//CONSTUCTOR/////////////////////////// 
public Bag() { 

T[] bagarray = (T[])new Object[10]; 

} 

成員變量聲明:

T[] bagarray; 
//CONSTUCTOR/////////////////////////// 
public Bag() { 

bagarray = (T[])new Object[10]; 

} 

你希望兩個的後者。