Java程序运行时错误

Sam*_*Sam 0 java nullpointerexception

public class BooksTestDrive {
 public static void main(String[] args) {

  Books [] myBooks = new Books[3];
  int x=0;
  myBooks[0].title = "The Grapes of Jave";
  myBooks[1].title = "The Java Gatsby";
  myBooks[2].title = "The Java Cookbook";
  myBooks[0].author = "bob";
  myBooks[1].author = "sue";
  myBooks[2].author = "ian";

 while (x < 3) {
  System.out.print(myBooks[x].title);
  System.out.print("by");
  System.out.println(myBooks[x].author);
  x = x+1;
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

此代码编译但在运行时,它给出nullpointer异常.

Tho*_*sen 5

你的MyBooks [3]的分配只分配数组 你还需要为你的数组中的每个条目分配一个"new MyBook()".