我时不时地看到程序员扩展了某个类来处理“基本案例”的代码。例如,如果我正在创建一个Tuple
类来表示整数元组,我会有类似的东西
class Tuple {
private int[] values;
...
}
但是有些人会扩展Tuple
以适应一些基本情况,例如长度为 0、1 或 2 的元组:
class Tuple0 extends Tuple {
...
}
class Tuple1 extends Tuple {
private int value1;
...
}
class Tuple2 extends Tuple {
private int value1;
private int value2;
...
}
当然,...
每个TupleN
类的方法(用 表示)会比泛型Tuple
类的方法简单得多。所以,我的问题是:这种练习有什么好处吗?如果是,时间和原因;如果不是,为什么不呢?