8.泛型

1.泛型在集合中的使用(掌握)

集合使用泛型前
集合使用了泛型

//集合类或接口,在声明的时候,使用了泛型。那么我们就可以在实例化的时候,声明具体的泛型的类型。

//在声明泛型类或泛型接口时,其中的方法如果使用了泛型的声明的类型:E.那么当实例化以后,相应方法中的E类型都替换为具体的泛型的类型。

//虽然集合类或接口使用了泛型的声明,但是我们在实例化时,可以不用泛型。这个时候,默认泛型的类型是Object.

泛型示例

2.如何自定义泛型类、泛型接口、泛型方法(理解)

自定义泛型

//在实例化泛型类的对象时,指明泛型类中泛型的类型,那么其相关的方法,若使用了泛型的类型,那么这些泛型的类型全部转换为实际指明的类型。

//当子类继承有泛型的父类时,也可以指明泛型的类型


3.泛型在继承方面的体现(理解)

泛型在继承方面理解

4.通配符的使用(理解)

    //类A 是 类 B 的父类,但是List不是 List的父类,二者是并列关系

    //List?是 List和List的公共父类。其中类A和类B是任意的类。

    //有限制条件的通配符:(了解)

    //? extends A:可以将List或List 赋值给List,其中B类是A类的子类

    //? super A:可以将List 或List 赋值给List,其中B类是A类的父类

    Listlist1 = new ArrayList();

    list1.add("AA");

    list1.add("BB");

    list1.add("CC");

    List list2 = list1;

    //1.读取:可以读取声明为通配符的集合中的元素

        /*for(Object o : list2){

            System.out.println(o);

        }*/

        Iterator iterator = list2.iterator();

        while(iterator.hasNext()){

            System.out.println(iterator.next());

        }

    //2.写入:不允许向声明为通配符的集合中写入数据。唯一可以写入的就是null

    //list2.add("DD");

    list2.add(null);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写在之前 以下是《疯狂Java讲义》中的一些知识,如有错误,烦请指正。 泛型初衷 集合对元素类型没有任何限制,这样...
    hainingwyx阅读 398评论 0 0
  • 本文包括:JDK5之前集合对象使用问题泛型的出现泛型应用泛型典型应用自定义泛型——泛型方法自定义泛型——泛型类泛型...
    廖少少阅读 1,932评论 5 16
  • 第8章 泛型 通常情况的类和函数,我们只需要使用具体的类型即可:要么是基本类型,要么是自定义的类。但是在集合类的场...
    光剑书架上的书阅读 2,160评论 6 10
  • 1. 数据结构课程的特点 专注于数据元素之间的关系 专注于特定结构之上的算法 2. 泛型编程 泛型编程的概念:不考...
    编程半岛阅读 300评论 0 0
  • 关于欧洲历史的入门级别的书。 最大特点是语言简洁,不啰嗦,叙述线索比较清晰明了。 可以买纸质书,给孩子当历史书看。
    hs双儿阅读 148评论 0 0