找不到Java对象名称中的类中的类
当我运行此代码时,我收到一条消息,它无法找到符号簿 然而,根据我(周)的理解,这个错误不应该发生,因为Book是Library中的类,我是从它的对象定义它的找不到Java对象名称中的类中的类,java,oop,Java,Oop,当我运行此代码时,我收到一条消息,它无法找到符号簿 然而,根据我(周)的理解,这个错误不应该发生,因为Book是Library中的类,我是从它的对象定义它的 请帮助和指导。提前感谢您的帮助您的图书班是图书馆的成员。所以您只能通过库类访问它。所以你的代码应该是 class Library { String libraryName; String address; Library(String namelibrary) { libraryName=
请帮助和指导。提前感谢您的帮助您的图书班是
图书馆的成员
。所以您只能通过库类访问它。所以你的代码应该是
class Library {
String libraryName;
String address;
Library(String namelibrary)
{
libraryName=namelibrary;
}
Book[] books=new Book[150];
void addBook(Book newBook)
{
books[i]= newBook;
i++;
}
class Book
{
String title;
boolean borrowed;
}
}
public class test{
public static void main(String[] args)
{
Library firstLibrary = new Library("10 Main St.");
Library secondLibrary = new Library("228 Liberty St.");
firstLibrary.books[0]= new Book("Maths");
}
}
然后,您的下一个错误是您没有接收名称的图书的适当构造函数。喝一杯就可以了
firstLibrary.books[0]= firstLibrary.new Book("Maths");
好的,看起来在这个方法中还有一个错误
class Book {
String title;
boolean borrowed;
public Book(String title) {
this.title = title;
}
}
你从来没有申报过你的i。请声明它并初始化
void addBook(Book newBook) {
books[i] = newBook;
i++;
}
看起来您最近开始使用Java。所以暂时不要使用嵌套类。您的图书类是
库的成员。所以您只能通过库类访问它。所以你的代码应该是
class Library {
String libraryName;
String address;
Library(String namelibrary)
{
libraryName=namelibrary;
}
Book[] books=new Book[150];
void addBook(Book newBook)
{
books[i]= newBook;
i++;
}
class Book
{
String title;
boolean borrowed;
}
}
public class test{
public static void main(String[] args)
{
Library firstLibrary = new Library("10 Main St.");
Library secondLibrary = new Library("228 Liberty St.");
firstLibrary.books[0]= new Book("Maths");
}
}
然后,您的下一个错误是您没有接收名称的图书的适当构造函数。喝一杯就可以了
firstLibrary.books[0]= firstLibrary.new Book("Maths");
好的,看起来在这个方法中还有一个错误
class Book {
String title;
boolean borrowed;
public Book(String title) {
this.title = title;
}
}
你从来没有申报过你的i。请声明它并初始化
void addBook(Book newBook) {
books[i] = newBook;
i++;
}
看起来您最近开始使用Java。因此,暂时不要使用嵌套类。尝试在类库之后定义类书,如
class Library {
String libraryName;
String address;
private int i = 0;
..
..
尝试在类库之后定义类书,如
class Library {
String libraryName;
String address;
private int i = 0;
..
..
这不是真正的代码,很难帮助你。也许是包装上的污点,进口的???很难说你需要告诉编译器你想要库中的书
,所以你需要新库。书
不仅仅是新书
。此外,在自己的文件中声明类并避免这样的嵌套类更为常见。由于Book
不是一个“第一级”类,例如库
,因此在测试
类的上下文中无法直接访问它。要实际实例化一个新的Book
项,您应该调用Book
构造函数,比如Library.newbook(“数学”)代码>。此外,如果您计划实例化多个“库”类,您可能应该使用关键字private
将String Library
和String address
设置为private。这不是真正的代码,很难帮助您。也许是包装上的污点,进口的???很难说你需要告诉编译器你想要库中的书
,所以你需要新库。书
不仅仅是新书
。此外,在自己的文件中声明类并避免这样的嵌套类更为常见。由于Book
不是一个“第一级”类,例如库
,因此在测试
类的上下文中无法直接访问它。要实际实例化一个新的Book
项,您应该调用Book
构造函数,比如Library.newbook(“数学”)代码>。此外,如果您计划实例化多个“库”类,您可能应该使用关键字private
将String Library
和String address
设为private,它现在仍然是一个内部类。。。它将产生相同的错误问题不是来自封闭类中的Book
类位置,而是如何实例化新的Book
项。它现在仍然是一个内部类。。。它将产生相同的错误问题并非来自封闭类中的Book
类位置,这是一本新的书籍
项的实例化方式。非常感谢您帮助我解决问题并指出错误。事实上,我对Java是新手,但我的代码非常庞大,我想把导致问题的部分放在这里,并删除其他部分。所以在这个过程中,我删除了书中的int-i声明和构造函数以及不相关的部分,再次感谢。我没想到会有这么多人来回答我并指出错误。事实上,我是Java新手,但我的代码非常庞大,我想把导致问题的部分放在这里,并删除其他部分。所以在这个过程中,我删除了书中的int-i声明和构造函数以及不相关的部分,再次感谢。我没想到会有压倒性的反应