我已经在Java中定义了一个对象 - 就Java而言,它们是相同的事物,但就填充它们的数据而言,它们可以是三种类型之一(全称为1, “0”代表“根”)。
我真的希望能够做到的是定义了四个构造函数,因为它们需要每个类型稍微不同的参数。我可以用战略性的空值来实现,但这似乎是错误的做法。我很想有是这样的:在Java构造函数中有固定参数 - 可能吗?
public MenuNode(int type = 1, param1, param2, param3) {
doStuffHere();
}
public MenuNode(int type = 2, paramX, paramY) {
doStuffHere();
}
,然后调用沿着线的东西:
switch (toQueue.itemType) {
when ITEM_TYPE_STATIC {
MenuNode mn1 = new MenuNode(ITEM_TYPE_STATIC, param1, param2, param3);
}
when ITEM_TYPE_DYNAMIC {
MenuNode mn2 = new MenuNode(ITEM_TYPE_DYNAMIC, paramX, paramY);
}
}
等等等等
我希望这是某种形式的意义 - 它有点出来,谷歌搜索只提到公共静态无效等 如果有人比我有更多的Java经验/诀窍可以看一看,永恒的爱和感激之情即将到来。
辉煌 - 非常感谢! <3承诺。 – 2011-04-12 12:38:20