0

たとえば、ステータスがアクティブまたは非アクティブであり、それらの状態のそれぞれに識別子があるTeacherというBean クラスがあります。この動作を実装するために、私のチームはid属性とname属性の両方を持つ Status Bean を用意することにしました。

ここで、私がTeacher Bean を使用するサービスのクライアントであるとしましょう。上記のサービスを使用するには、Teacher Beanを作成する必要があります。

Teacher teacher = new Teacher();
teacher.setName("Some name");
...
Status status = new Status();
status.setId(1);
...
teacher.setStatus(status);

問題は、Teacher.getStatus()

Status status = null;

Status getStatus() {
    if (status != null) {
        return status;
    } else {
        return new Status();
    }
}

そのため、 Teacher Beanを作成するときはいつでもStatusコンストラクターを呼び出しません。このような:

Teacher teacher = new Teacher();
teacher.setName("Some name");
teacher.getStatus().setId(1);

それは悪い習慣と見なされますか?もしそうなら、なぜですか?

4

2 に答える 2