我想开发一个process()方法.该方法以数据类的形式获取一些数据并对其进行处理.数据类很相似,但略有不同.
例如,我们有以下数据类processDataObject_A,processDataObject_B和processDataObject_C.
重载方法更好:
void process(processDataObject_A data) { //Process processDataObject_A here } void process(processDataObject_B data) { //Process processDataObject_B here } void process(processDataObject_C data) { //Process processDataObject_C here }
或者让具体的数据类扩展一些抽象数据类,并将其传递给流程方法,然后让方法检查类型并采取相应的行动:
void process(AbstractProcessDataObject data) { //Check for type here and do something }
或者有更好的方法来解决它吗?如果这是一个Web方法,这种方法会改变吗?
提前致谢
我会选择:
process (data) { data.doProcessing(); }