假设我有以下课程:
public class Test<E> {
public boolean sameClassAs(Object o) {
// TODO help!
}
}
我将如何检查o与 相同的课程E?
Test<String> test = new Test<String>();
test.sameClassAs("a string"); // returns true;
test.sameClassAs(4); // returns false;
我无法更改方法签名,(Object o)因为我正在覆盖超类,因此不要选择我的方法签名。
我也宁愿不尝试进行强制转换,然后在失败时捕获产生的异常。