Java 我的数组成员即使已初始化,也为空

Java 我的数组成员即使已初始化,也为空,java,Java,因此,我试图在关系数组初始化后访问其中的成员。然而,它不允许我这样做。我做错了什么 public class FamilyRelations { private Relationship [] relation; public static void main(String[] args) { FamilyRelations family = new FamilyRelations(); Scanner scanner = new Scanner(test); f

因此,我试图在关系数组初始化后访问其中的成员。然而,它不允许我这样做。我做错了什么

public class FamilyRelations {
private Relationship [] relation;

public static void main(String[] args) {

    FamilyRelations family = new FamilyRelations(); 

    Scanner scanner = new Scanner(test);
    family.run(scanner);    
}

private void run(Scanner scanner) {


    noOfRelations = 3;
    relation= new Relationship [3];
    System.out.println(relation[0].child); // Why does this raise nullpointerexception?
     // Here I want to do relation[0].father = "John"; for example



}

public class Relationship {

public String child;
public String father;
public String mother;

public Relationship() {
    this.child = "hej";
    this.father = "father";
//  this.mother = mother;
}

只有数组被初始化。阵列中充满了空插槽。您还需要在其中创建对象。谢谢,这解决了我的问题:)