1

我正在使用 primefaces 进行 Jsf2 项目。我用过这样的东西: Bean 类:

Student 它是具有 id 和 name 的主要 Bean 类。我又创建了两个 bean 类。技术学生和非技术学生都在扩展学生 bean 课程。我的问题是我做对了吗?是正确的设计吗?我想保持 id 和 name 通用,可在技术学生和非技术学生页面中重复使用

class student{
        id, name
        getter and setter
}

class Technicalstudent extends student{
        technicaldetails, 
        get and set
}

class NonTechnicalstudent extends student{
        nontechnicaldetails
        get and set
}
4

3 回答 3

0

根据您想要实现的目标,我发现代码没有任何问题。您在这里所做的称为is-a relationship。意味着技术学生和非技术学生也是学生。因此它将继承 Student 的每个字段。希望有帮助。

于 2013-07-29T09:55:25.913 回答
0

是的,从继承的角度来看,您的设计是正确的。子类/子类需要从父类继承公共属性,并且它们可以拥有自己的属性。

于 2013-07-29T09:50:06.520 回答
0

您的设计是正确的,但是在 Ui 上,您必须将您的实体与后端对象进行映射。使用 Student 对象映射对象并取 aboolean 是学生对象,例如Boolean isTechnicalStudent,基于选项设置它truefalse

在 UI 端切换你的技术和非技术学生详细信息的形式,现在由于这个布尔值,你总是知道它是技术的还是非技术的,所以你可以轻松地键入 cast。

于 2013-07-29T11:01:16.147 回答