2013-05-01 89 views
3

我在代碼 私人LinkedList股票中出現錯誤。混淆了私人和公共的使用

錯誤狀態我有一個非法的表達開始,大概是私人?我怎樣才能改變這個擺脫錯誤?如果我將其更改爲public,則會得到完全相同的錯誤。我的stockItem類中的所有內容也設置爲public

任何幫助,將不勝感激

import java.util.*; 
public class StockList { 
{ 
private LinkedList<StockItem> stock 
     = new LinkedList<StockItem>(); 


public StockList() {}; 

感謝。

+1

你的源代碼不能編譯 – 2013-05-01 17:56:12

+0

你可以把你的代碼完整嗎?現在你有一些沒有意義的括號 – 2013-05-01 17:57:31

回答

5

這是因爲你有兩個開放大括號:

public class StockList { // <<== Here 
{ // <<== And here 

你需要刪除其中的一個,以便該編譯。

+1

它和最後缺少一個花括號(假設原始問題中提供的片段是整個類) – AndyPerfect 2013-05-01 17:58:58

+0

對它進行排序,這樣的菜鳥錯誤對不起。 – 2013-05-01 18:01:50

1

您需要在類級別聲明字段

class YourClass{ 
    //class level 
    private LinkedList<StockItem> stock = new LinkedList<StockItem>(); 
    { 
     //not here, in initialization block 
    } 
} 

所以,你需要刪除的額外{一個前private LinkedList<StockItem> stock

0

更改爲

「私人LinkedList的股票;

public class StockList(){ stock = new LinkedList(); }'

和代碼仍然應該工作。

2

你的私人就好,它是一個花括號問題。

import java.util.*; 
public class StockList { 
{ <<< Remove this <<<<< 
private LinkedList<StockItem> stock 
     = new LinkedList<StockItem>(); 


public StockList() {}; 
} << add this 
3

正如dasblinkenlight所說,你有兩個開放的花括號。您還沒有用於StockList類的大括號。

public class StockList { 
     private LinkedList<StockItem> stock = new LinkedList<StockItem>(); 
    }