java:跨文件使用对象数组

时间:2017-01-26 22:35:01

标签: java arrays

好吧,我对java非常新,解决方案可能很简单,所以请耐心等待,但基本上我是在尝试使用电影类数组制作电影数据库。我有3个.java文件:测试人员,数据库和电影类。我的问题是我真的不确定如何让我的测试人员文件识别数据库文件中的电影数组,而且我发现的每个解决方案都给了我更多错误。

测试器:

public class DatabaseTester extends MovieDatabase{

    public static void main(String[] args) {

        System.out.println(MovieDatabase.movies[1].getTitle());


    }
}

数据库:

public class MovieDatabase {
    public static Movie movies[] = new Movie[2];
    public static void movieDb(String[]args){
    movies[1].setTitle("Test Title");
    }
}

^电影类有一套标题方法。我对数据库的代码不太确定,但这是我能找到的唯一没有给我错误的方法。我会在必要时发布完整的电影课,但它很长,所以......只在需要的时候

如果我从MovieDatabase尝试getTitle();,我会得到错误:

Exception in thread "main" java.lang.NullPointerException at DatabaseTester.main(DatabaseTester.java:35)

我知道这个错误是来自程序,认为数组没有初始化,所以它一定不能识别我的数据库文件......如果我试图从MovieDatabase中获取标题,它就不会这样做。认识到它,并会给我一个错误或什么都没有。除了将电影初始化放在主要内容之外,我无法找到解决这个问题的方法(我已经确认了作品,但它不是我想要做的)。

1 个答案:

答案 0 :(得分:1)

您可以在课程DatabaseTester

中尝试以下更改的代码
public class DatabaseTester {
      public static void main(String[] args) {
               System.out.println(Database.movies[0].getTitle());
          }
    }