dominealex 2021-12-01 09:50 采纳率: 100%
浏览 33
已结题

构造方法中的泛型约束失效问题

    @Test
    public void testRaw() {
        Fruit<String> fruit = new Fruit<>();
        Basket<Integer> basket = new Basket(fruit); // 不报错!
        basket.setFruit(fruit); // 报错: required type Fruit<Integer>   
    }

    private static class Basket<V> {
        public Basket(Fruit<V> f) {
        }

        public void setFruit(Fruit<V> f) {
        }
    }

    private static class Fruit<R> {
    }

Basket的构造方法传入的不匹配类型不报错,下面的setFruit方法会报错,这是什么原因?

  • 写回答

3条回答 默认 最新

  • 关注

    要看Basket的构造函数,内部代码是怎么处理的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月9日
  • 已采纳回答 12月1日
  • 修改了问题 12月1日
  • 修改了问题 12月1日
  • 展开全部