我正在编写一个通用Pair
类,它包含任何两个对象(相同或不同类型)。我现在正在编写一个复制构造函数,但是,我遇到了一些我无法解决的错误。我的代码如下:
public class Pair<T1, T2> {
// Instance Fields
private T1 first;
private T2 second;
// Constructors
public Pair() {}
public Pair(Pair<?, ?> p) {
first = p.first; // error here
second = p.second; // error here
}
}
有没有办法让我使用来检查?
pair 对象中的类型instanceof
?如果我强制p.first
转换T1
它有效,但我想让我的课程彻底并处理它可能面临的任何情况,例如用户输入错误的对象对类型或可能发生的其他问题。
另一个问题是,是否有在 Java 中使用泛型的指南或某种规则?