0
有人能告訴我我在做什麼錯嗎?當我在Eclipse中使用此代碼時,它告訴我,當我嘗試在主方法中設置sheetName
到"hi"
時,我無法「對非靜態字段進行靜態引用」。我在這裏做錯了什麼?我知道這一定很簡單,但我到處搜索,無法弄清楚!無法在main()方法中實例化字段(實例變量)。爲什麼?? Java
public class AutoExpire {
private String sheetName;
private FileInputStream inputStream;
/**
* Instantiates the class.
*/
public AutoExpire() {
// do nothing
}
/**
* The main method from which the program is ran.
*
* @param args
* No arguments.
* @throws IOException
* If program fails to run.
*/
public static void main(String[] args) throws IOException {
sheetName = "hi";
'static'表示它是類的一部分,而不是類實例(對象本身)的一部分。非靜態字段如sheetName是類的實例的一部分。通常情況下,您可以使用具有字符串參數的構造函數創建該類,並從構造函數中分配字段。如果班級沒有'sheetName'可以生活,你也可以創建一個setter。但是無論你做什麼,你都應該在創建類實例期間或之後設置字段。 –