函数的参数太多,我想用一个类来作为一个参数

原来的参数都作为这个类的成员变量,这样好吗?

比如:
myCall(int i,int j,String c,char c);

public class para{
int i;
int j;
string c;
char d;... get/set方法
}
函数变成myCall(para i)

这样好么?

要有对象的观念,把这些参数包装到对象里,但不要强行封装到一个类里面

我是这样做的,写了一个基类,基类中的变量是很多共性的,比如start,count等,然后对于不同的应用,从基类派生出有不同变量的子类,现在我有一个问题就是,我的函数定义应该如何写

比如两个应用的不同函数,对于User模块有参数类UserParam,FeeBack模块有参数类FeeParam

是这样定义好
1.getUser(Param a)

2.getFeeback(Param a)

还是
1.getUser(UserParam a)

2.getFeeBack(FeeParam a)这样好不好

随便谈谈,个人觉得既然只是封装一下简单的参数,第二种方法方便点,类型放到外面转换。

用Value Object作为参数也是可以的啊

在martin fowler的《重构》一书中,就强调了,如果方法调用的参数过多,或者多个方法都使用相同的参数,那么可以考虑将参数对象化。原文称作Introduce Parameters Object(引入参数对象)。

参数过多的话还是要先看看能不能减少,如果不能的话,才考虑用对象
就像
struts的action一扬

public ActionForward execute(
ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
throws DataBaseException, WebServerException {}