首页 > 编程语言 >Java SE 宋红康 days04-高级篇-泛型

Java SE 宋红康 days04-高级篇-泛型

时间:2022-10-02 17:35:51浏览次数:52  
标签:Java 实例 子类 Object List days04 泛型 父类

1. 在集合中使用泛型:

  ① 泛型类型必须是类,不能是基本数据类型,要用包装类替换;

  ② 如果实例化时,没有指明泛型的类型,默认类型为 java.lang.Object 类型;

2. 如何定义 泛型类、泛型接口、泛型方法

  泛型类:子类在继承父类时,指明了泛型类型,则实例化子类对象时不需要再指明泛型了;

    注意

    a. 如果泛型不指定,均按照Object处理;

    b. 如果泛型结构式一个接口或抽象类,则不可创建泛型类的对象;

    c. 静态方法中不可以使用类的泛型(如异常类等)

    d. 声明一个泛型数组,必须用 T[ ]  arr = (T[ ]) new  Object[10];的形式

  泛型方法:在方法中出现了泛型的结构,泛型参数与类的泛型参数没有任何关系;

    a. 泛型方法所属的类是不是泛型类都没有关系;

    b. 泛型方法可以声明为静态的,泛型参数是在调用方法时确定的,并非是在实例化类时确定的;

3. 泛型在继承方面的体现

  通配符: ,类A时类B的父类,G<A>和G<B>没有关系,二者的父类是 G<?>;如:List<Object>、List<String> 的父类是 List<?>

  注意:对于 List<?> 类型的实例,就不能向其内部添加数据,除了添加 null 之外;

     允许读取数据,读取的数据类型为 Object;

4. 有限制条件的通配符的使用

  ?  extends  Person:G<?  extends  A> 可以作为 G<A> 和 G<B> 的父类,其中 B 是 A 的子类或本身(B ≤ A);

  ?  super  Person:G<?  super  A> 可以作为 G<A> 和 G<B> 的父类,其中 B 是 A 的父类或本身(B ≥ A);

  写数据:父类不能赋值给子类;读数据没有限制

标签:Java,实例,子类,Object,List,days04,泛型,父类
From: https://www.cnblogs.com/LinxhzZ/p/16749071.html

相关文章

  • SpringBoot+Vue线上买菜系统 线上商城系统 线上购物商城系统Java Vue
    ......
  • 面向对象的JAVA
    一个类的结构:  属性==成员变量==field==域、字段方法==成员方法==函数类和对象的关系:类是一个统属概念,对象是独立的个体publicclassClassTest{publicstatic......
  • Java 入门知识
    Java入门知识Java三大版本JavaSE标准版,桌面程序、控制台开发JavaME嵌入式开发,手机、小家电基本死亡JavaEE企业级开发,Web端、服务器开发JDK,JRE,JVMJ......
  • java多线程--6 死锁问题 锁Lock
    java多线程--6死锁问题锁Lock死锁问题多个线程互相抱着对方需要的资源,然后形成僵持死锁状态packagecom.ssl.demo05;publicclassDeadLock{publicstatic......
  • Java的foreach
    Java的foreach获取数组中的每一个元素publicclassForeach{ publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub int[]num={15,4......
  • java写一个用循环和switch进行用户交互的计算器
    java一个简单的计算器思路1.写四个方法,加减乘除2.利用循环+switch进行用户交互3.传递需要操作的两个数4.输出结果 方法一:packagecom.wang.method;​importjava.......
  • 学习记录13标准的JavaBean类
    标准的JavaBean类类名需要见名知意成员变量使用private修饰提供至少两个构造方法无参构造方法带全部参数的构造方法成员方法提供每一个成员变量对应的setXxx()......
  • Java - 编写和编译引用自己的类库
    Java-编写自己的类库2021-08-02   许多程序代码我们先用到以后的开发中。比如:排序算法等。避免每次使用都要重新写一遍这些代码。如果可以像调用jdk一样的方法......
  • Java SE 宋红康 days04-高级篇-Java集合
    1.Java集合可以分为两个体系Collection:单列数据,定义了存取一组对象的方法的集合;List:元素有序,可重复的集合;(ArrayList、LinkedList、Vector)Set:元素......
  • javascript: get Operating System version
    javascript:<scripttype="text/ecmascript">console.log(navigator.userAgent)console.log(navigator.appVersion)console.log(navigator.platform) //Mozilla/5.0......