Я начинающий в 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;
}
}
}
Вау, прошло всего 5 минут с тех пор, как эта проблема появилась на 'SO' – Reimeus
Ваш метод заимствования должен быть статичным? Я чувствую, что сделать его нестационарным устранить вашу проблему ... – StephenTG
Заставляет вас думать, что, возможно, Java-ID могла бы предупредить об этом. – sje397