泛型如何比较class类型?

下面这个语句中
想实现类似 !T.equals(Apple.class 所要表达的功能
如何做?

class Pool<T> {
    Long id;
    String name;
    T product;
    
    ...
    
    
    void funcForApple(){
        if(!T.equals(Apple.class)){
            throw new TypeMismatchException(...)
        }
    }
 
}
阅读 3.5k
4 个回答

product instanceof Apple

    if(!(product instanceof Apple)){
        throw new TypeMismatchException(...)
    }

为什么不用instanceof

instance 即可.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题