zoukankan      html  css  js  c++  java
  • Arrays.asList()方法的限制

    Arrays.asList()方法的限制是他对所产生的List类型做出了最理想的假设

    package example;
    
    import java.util.Arrays;
    import java.util.List;
    
    
    class Snow{}
    class Powder extends Snow{}
    class Light extends Powder{}
    class Heavy extends Powder{}
    class Crusty extends Snow{}
    
    public class Demo {
    
    
        public static void main(String[] args) {
            List<Snow> snow1=Arrays.asList(new Crusty(),new Powder());
            // List<Snow> snow2=Arrays.asList(new Light(),new Heavy());//编译器报错
            List<Snow> snow3=Arrays.<Snow>asList(new Heavy(),new Light());//编译通过
            
        }
    
    }

    当试图创建snow2时,Arrays.asList()中只有Powder类型,因此它会创建List<Powder>而不是List<Snow>,

    创建snow3时,可以在Arrays.asList()中间插一条线索,告诉编译器对于Arrays.asList()产生的List类型,实际的

    目标类型应该是什么。这称为显示类型参数说明。

  • 相关阅读:
    dart中Map类型详解
    洛谷P1582 倒水(二进制)
    maven依赖 临时转阿里云镜像
    java jdbc 连接数据库
    java 常用类
    java 异常处理
    java 对象 this static 封装
    java 面对对象 内存分析
    团队开发 git
    java 代码块
  • 原文地址:https://www.cnblogs.com/xurui1995/p/5276170.html
Copyright © 2011-2022 走看看