Nested Projection

TuitionView

public interface TuitionView {
    Double getFee();
    StudentView getStudent();
}

StudentView

public interface StudentView {
    String getName();
}

可以发现,上面的投影是通过 owning side 访问 non-owning side。这样是合法的。

TuitionView

public interface TuitionView {
    Double getFee();
}

StudentView

public interface StudentView {
    String getName();
    TuitionView getTuition();
}

如果是这样反过来,从 non-owning side 访问 owning side,那么 StudentView.tuition 会被设置成 null

Projection 中,从 non-owning side 访问 owning side 是不被允许的!

最后更新于