美文网首页
集合框架(泛型高级之通配符)

集合框架(泛型高级之通配符)

作者: 养码哥 | 来源:发表于2018-04-06 23:37 被阅读0次

核心代码:

  package com.ithelei;

import java.util.ArrayList;
import java.util.Collection;

/*
 * 泛型高级(通配符)
 * ?:任意类型,如果没有明确,那么就是Object以及任意的Java类了
 * ? extends E:向下限定,E及其子类
 * ? super E:向上限定,E极其父类
 */
public class GenericDemo {
public static void main(String[] args) {
    // 泛型如果明确的写的时候,前后必须一致
    Collection<Object> c1 = new ArrayList<Object>();
    // Collection<Object> c2 = new ArrayList<Animal>();
    // Collection<Object> c3 = new ArrayList<Dog>();
    // Collection<Object> c4 = new ArrayList<Cat>();

    // ?表示任意的类型都是可以的
    Collection<?> c5 = new ArrayList<Object>();
    Collection<?> c6 = new ArrayList<Animal>();
    Collection<?> c7 = new ArrayList<Dog>();
    Collection<?> c8 = new ArrayList<Cat>();

    // ? extends E:向下限定,E及其子类
    //本身和儿子
    // Collection<? extends Animal> c9 = new ArrayList<Object>();
    Collection<? extends Animal> c10 = new ArrayList<Animal>();
    Collection<? extends Animal> c11 = new ArrayList<Dog>();
    Collection<? extends Animal> c12 = new ArrayList<Cat>();

    // ? super E:向上限定,E极其父类
    //本身和父亲
    Collection<? super Animal> c13 = new ArrayList<Object>();
    Collection<? super Animal> c14 = new ArrayList<Animal>();
    // Collection<? super Animal> c15 = new ArrayList<Dog>();
    // Collection<? super Animal> c16 = new ArrayList<Cat>();
}
}

class Animal {
}

class Dog extends Animal {
}
    
    class Cat extends Animal {
}

相关文章

  • 集合框架(泛型高级之通配符)

    核心代码: 邮箱:ithelei@sina.cn 技术讨论群:687856230 GoodLuck

  • Java泛型食用笔记(四) -- 通配符

    Java泛型食用笔记(四) -- 通配符 1. 三种通配符 通配符为一个泛型类所指定的类型集合提供了一个有用的类型...

  • Web笔记-基础加强

    泛型高级应用 自定义泛型方法 自定义泛型类 泛型通配符? 泛型的上下限 泛型的定义者和泛型的使用者 泛型的定义者:...

  • Java集合(三)

    1. 泛型接口的使用 2. 泛型高级之通配符 3. 增强for循环—底层依赖的是迭代器 4. 5. 可变参数方法 ...

  • 《Kotlin入门实战》CH8 | 泛型

    泛型 泛型是在Java5中引入的,泛型让集合框架可以重用代码,在没有泛型时候,集合框架中存储数据的类型都是Obje...

  • Java基础

    1、泛型 jdk1.5增加了泛型支持很大程度是为了让集合记住其元素的类型。知识点:泛型类、泛型接口、类型通配符、泛...

  • Android 学习(一):Java 泛型

    Java泛型学习 1.0 泛型常用案例 2.0 泛型方法 3.0 泛型类 4.0 通配符 ? 通配符,占位符,标识...

  • Kotlin泛型方法

    泛型约束 泛型通配符

  • Java-API-集合框架(三)-泛型

    泛型的由来和基本使用 泛型的擦除 泛型类的使用 泛型方法的使用 泛型接口 泛型通配符(?) 通配符? 在api中的...

  • java 泛型通配符和边界

    1. 通配符 泛型中常用的通配符: 我们在定义泛型类,泛型方法,泛型接口的时候经常会碰见很多不同的通配符,比如 T...

网友评论

      本文标题:集合框架(泛型高级之通配符)

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