我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

Java泛型类通配符类型


        // 第一种
        Generic<? extends Number> g9;
        Generic<Float> g10 = new Generic<>();
        g10.set = new Float[]{1f, 3f, 5f};
        g9 = g10;
        g9.show();

        // 第二种
        Generic<? extends Number> g11 = new Generic<Float>();
        g11.set = new Float[]{1f, 4f};

请问,为什么第二种写法不行呀

如果把 Float 换成 Double 或者 Integer,可以正常编译运行。为什么同为 Number 的子类,Float 就不行呢

img

? extends Number 这种叫做协变,协变只能用在引用上

近期文章

  • 比较判断时,数组大小不兼容,
  • java如何调用cmd执行pandoc相关命令
  • matlab绘制2PSK、2ASK、DPSK
  • mysql 5.7分组查询问题
  • springboot部署在linux上访问缓慢
  • selenium定位元素出现问题
  • 关于USB虚拟串口通信速度的问题!(语言-c#)
  • Java列表为什么08,09都超出范围,其他的98,99都可以
  • CentOS7 打不出正常的波浪线 波浪线是那种特别大的,无法接受命令
  • 我在复现higherhrnet 网络的时候出现
  • 如何用IDEA 2020.1进行maven配置?
  • 初学nginx,访问报重定向次数过多
  • 使用Qt的painter没有绘制图形,也没有错误提示?
  • 把idea里的java项目生成exe演示文件(有偿)
  • r语言中acf图和pcf图横坐标有时候特别大有时候特别小
  • jupyter book解密文
  • 如何用selenium解决滑块验证
  • nc.Dataset中数据无法读取
  • R语言时间序列数据按时间分割
  • 输出不匹配 需要怎么操作呢

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华