泛型

作者: 油麦 | 来源:发表于2018-03-17 17:41 被阅读7次
    • 1.1 引言
    • 1.2 动机和优点
    • 1.3 定义泛型类和接口
    • 1.4 泛型方法
    • 1.5 【示例】对一个对象数组进行排序
    • 1.6 原始泛型和向后兼容
    • 1.7 通配泛型
    • 1.8 消除泛型和对泛型的限制
    • 1.9 【示例】泛型矩阵类

    1.1 引言

    泛型可以使我们在编译时就检测出错误,而不必等到运行才检出错误。如果视图使用一个不相容的对象,编译器会检测出这个错误。

    1.2 动机和优点

    从1.5开始允许定义泛型类泛型接口泛型方法,并且在API中修改了java.lang.Comparable接口。
    <T>表示泛型类型,随后用一个实际具体类型来替换它,替换的类型称为泛型实例化。
    泛型类型是引用类型,不能用基本类型来实例化,使用包装类来替换。
    优点:

    1. 存的时候,编译器会提示类型不匹配
    2. 取得时候,无需类型转换,直接输入index可以查找
            // 这里不会出错!
            ArrayList date = new ArrayList<>();
            date.add(new Date());
            date.add(new String(" string"));
            System.out.println((String)date.get(1) + date);// 这里如果没使用泛型,在输出的时候需要强制类型转换
            // 这里编译会出错!
            ArrayList<Date> dateArray = new ArrayList<>();
            dateArray.add(new Date());
            dateArray.add("string");// 错误的地方
    

    1.3 定义泛型类和接口

    使用类来创建对象,或者使用类或接口来声明引用变量时,需要指明具体的类型

    1.4 泛型方法

    1.5 【示例】对一个对象数组进行排序

    1.6 原始泛型和向后兼容

    1.7 通配泛型

    1.8 消除泛型和对泛型的限制

    1.9 【示例】泛型矩阵类

    【引用】
    Java语言程序设计(进阶篇) ---- 机械工业出版社

    相关文章

      网友评论

          本文标题:泛型

          本文链接:https://www.haomeiwen.com/subject/npyjqftx.html