|
|
1
1
在我看来,您应该创建一个通用的元组接口(或者使用上面提到的集合),并让您的pair和3元组类实现该接口。这样,您可以利用多态性,但也允许对使用比任意大小的元组更简单的实现。您可能希望使元组接口包含.x和.y访问器,作为前两个元素的简写,较大的元组可以根据需要为索引较高的项实现自己的简写。 |
|
|
2
1
这是一件好事,因为它确保了更多的安全。返回元组的地方通常有一些耦合的信息,即每个组件的隐含知识。如果在元组中传递的值比预期的多,情况会更糟——这意味着什么?它不适合继承。
当然,如果您有一个特定的用例,并且发现某些行为将帮助您,那么这些都不重要。
|
|
|
3
1
像大多数与设计相关的问题一样,答案是——这要看情况而定。 如果您正在寻找传统的元组设计,那么Tuple2、Tuple3等就是最佳选择。继承的问题是,首先,三元组不是成对的类型。您将如何为它实现equals方法?三元组是否等于前两项相同的一对?如果你有一个对的集合,你能给它添加三元组吗?反之亦然?如果在您的域中这是好的,您可以使用继承。
|
|
|
4
1
这取决于您需要的语义-
如果您的语义是简单的组合,那么一个通用类元组<N>会更有意义 |
|
|
5
0
我会选择0,1,2或无穷大。e、 空,1个对象,你的Pair类,或者是某种类型的集合。
如果三个或四个项目之间存在特定关系,则可能应该命名。 [也许我忽略了这个问题,但我想不出哪种情况下我想以一种通用的方式具体链接3件事情] |
|
|
6
0
blogged about tuples ,我觉得读起来很有趣。 他提出的一点(我还不能判断是否正确)是:
这似乎表明我倾向于使用继承可能是正确的,并且与amit.dev所说的三元组是正确的相矛盾 不 一双。 |
|
Fernando Chu · 一个变量有多个可能的类?[关闭] 1 年前 |
|
|
Amaterastis · 基类接受子类和内部子类的模板参数 1 年前 |
|
|
Rishab Negi · 这个关键字在抽象类中是如何工作的 1 年前 |
|
|
dEmigOd · 类层次结构中的运算符重载解析 1 年前 |
|
|
TableTopRug · 如何从Kotlin中的密封类继承? 1 年前 |
|
|
hasdrubal · 抽象基类函数指针python 1 年前 |
|
|
Josh · 通过反思访问孩子的财产 1 年前 |