我是java的初學者。
我無法編譯下面的代碼,因爲我有17個關於「無法從靜態上下文中引用的非靜態變量」的錯誤。 它總是指向「這個」。聲明。 我是一名學生非靜態變量不能從靜態上下文中引用
package MyLib;
import java.util.*;
class Book {
static int pages;
static String Title;
static String Author;
static int status;
static String BorrowedBy;
static Date ReturnDate;
static Date DueDate;
public static final int
BORROWED = 0;
public static final int
AVAILABLE = 1;
public static final int
RESERVED = 2;
//constructor
public Book (String Title, String Author, int pp) {
this.Title = Title;
this.Author = Author;
this.pages = pp;
this.status = this.AVAILABLE;
}
public static void borrow(String Borrower/*, Date Due*/){
if (this.status=this.AVAILABLE){
this.BorrowedBy=Borrower;
this.DueDate=Due;
}
else {
if(this.status == this.RESERVED && this.ReservedBy == Borrower){
this.BorrowedBy= Borrower;
this.DueDate=Due;
this.ReservedBy="";
this.status=this.BORROWED;
}
}
}
哇,自從這個問題出現在'SO'後只有5分鐘 – Reimeus
您的借用方法是否需要靜態?我覺得使它非靜態可以解決你的問題... – StephenTG
讓你覺得也許java IDE可能會提醒你。 – sje397