Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 构造函数未定义错误_Java_Constructor - Fatal编程技术网

Java 构造函数未定义错误

Java 构造函数未定义错误,java,constructor,Java,Constructor,这段代码来自各种来源,提供了麻省理工学院旧课程的答案。我无法编译它。如何更改此代码以删除“构造函数手册(字符串)未定义”错误 导入java.awt.print.Book; 导入java.util.*; 公共班级图书馆{ 字符串库地址; ArrayList books=新建ArrayList(); 公共图书馆(字符串地址){ 图书馆地址=地址; } 公共无效地址簿(Book Book){ 图书。添加(图书); } 公共地址(){ System.out.println(图书馆地址); } 公共静态v

这段代码来自各种来源,提供了麻省理工学院旧课程的答案。我无法编译它。如何更改此代码以删除“构造函数手册(字符串)未定义”错误

导入java.awt.print.Book;
导入java.util.*;
公共班级图书馆{
字符串库地址;
ArrayList books=新建ArrayList();
公共图书馆(字符串地址){
图书馆地址=地址;
}
公共无效地址簿(Book Book){
图书。添加(图书);
}
公共地址(){
System.out.println(图书馆地址);
}
公共静态void printOpeningHours(){
图书馆每天从早上9点到下午5点开放;
}
公共静态void main(字符串[]args){
//创建两个库
图书馆第一图书馆=新图书馆(“主大街10号”);
第二图书馆=新图书馆(“自由街228号”);
//向第一个库添加四本书
addBook(新书(“达芬奇密码”);
//firstLibrary.addBook(新书(“小王子”);
//addBook(新书(“双城记”);
//addBook(新书(“指环王”);
//打印办公时间和地址
System.out.println(“库时:”);
打印开放小时数();
System.out.println();
System.out.println(“库地址:”);
firstLibrary.printAddress();
secondLibrary.printAddress();
System.out.println();
}
}

您添加了错误的导入
导入java.awt.print.Book

如果删除此导入,则需要导入包中存在的Book类

根据您的代码预订课程示例:

public class Book {
    String bookName;

    public Book(String name) {
        this.bookName = name;
    }
}

您需要添加此类并将其导入到库类中

Is
import java.awt.print.Book正确的导入?您需要Book类并将其导入到您的代码中。如果你只想编译,请输入所有使用图书类的行。非常感谢。我正在使用Eclipse,愚蠢地在不同的包中构建了这两个类,不用担心。在某个时候,它发生在每个人身上。:)如果您认为这有帮助,请将此标记为已接受的答案。我可以问一个后续问题吗?如果类不在同一个包中,我怎么能使用它呢?如果将类的可见性声明为Public,那么可以在包之外访问它
public class Book {
    String bookName;

    public Book(String name) {
        this.bookName = name;
    }
}