当前位置:  开发笔记 > 编程语言 > 正文

面向对象的方法设计选项

如何解决《面向对象的方法设计选项》经验,为你挑选了1个好方法。

我想开发一个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方法,这种方法会改变吗?

提前致谢



1> Marko..:

我会选择:

process (data) {
   data.doProcessing();
}

推荐阅读
有风吹过best
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有