说,我有一个通用类型如下
public class GenericType<T> {
private T someVar;
public void setVar(T var) { this.someVar = var; }
//Rest of the code
}
Run Code Online (Sandbox Code Playgroud)
我想允许它只采用特定类型(String/Integer/Double).我知道有限的通配符,但他们在这里没有帮助我.在setVar()中,instanceof如果type不是Integer/String等,我可以检查并抛出异常.这是最好的方法吗?
在对此类型执行操作时遇到同样的问题.根据类型,我想做不同的操作.继承和有界通配符似乎是这种问题的一般方法,但这些都是原始的包装器.