请问这个类怎么建啊?我现在不清楚整车,部件,零件,装配信息之间的关系,不知道用谁作为基类、用谁作为派生类。他们之间怎么链接啊,有没有人帮我理一下思路
首先,不说类的设计和扩展性,只说这几个间的关系,整车可能由部件和零件构成,部件可能由零件构成,装配信息则是描述他们之间的关系。
这几个之间我理解没有继承的关系。而是组合 ,我理解他们的关系是这样的,车和部件类的成员有装配信息,然后车的成员有部件、零件,部件的成员也有零件和部件。因此车、部件、零件抽象成组件类,这样这三者都可以是组件,也就是说车也可以由车、部件、零件组成
实际上,车、部件、零件这几个可以抽象出一个实体类,将公共属性编号、名称作为实体类的属性,这样做,也和你所有业务实体的保存与打开等文件的操作对应上了,
而车、部件、零件继承这个类。其实车、部件、零件、装配信息这几个类也可以抽象,以汽车为例,就写一个ICar的接口类,因为方便以后你要添加一种新型的车,有更多的属性,就直接继承然后增加属性就行了,同样部件、零件、装配信息也是一样,随着车的增加,部件、零件、装配信息这几个类肯定有相应的改变。
当然,你也可以暂时先不考虑车、部件、零件、装配信息这几个类的抽象,因为这样考虑就多了。
我建议把整车当作基类,另外两个派生。因为多态是父类指针或者引用来操作子类对象,必然是属性多的那个类作为基类更合适