美文网首页
源码阅读中的常客--泛型

源码阅读中的常客--泛型

作者: LiChangBao | 来源:发表于2019-03-17 01:12 被阅读0次

了解泛型一个例子足矣,多加应用提高代码的拓展性的同时也能提升逼格!

public <T> List<T> show(T t, Collection<T> c)
  1. 从左到右第一个T充当修饰符的作用,表示这个被修饰的方法是个泛型方法(就像被static修饰的方法为静态方法一样),此处的<T>可不是表示返回值类型哦!
  2. 第二个T,表示这个方法返回值类型为List,且这个List有泛型,只能存T类型的数据;
  3. 第三个T,表示这个方法的参数类型。

疑问:一个方法的返回值类型后面加不加<T>有什么区别呢?

  • 加<T>
class Demo{
  public <T> List<T> show(T t, Collection<T> c){
      for(T t : c){
          c.add(t);
      }  
  }
}

加<T>的方法相当于为该方法声明了一个类型为T的类,这个方法放到任意一个类中都不会报错的。

  • 不加<T>
class Demo<T>{
  public  List<T> show(T t, Collection<T> c){
      for(T t : c){
          c.add(t);
      }  
  }
}
  • 不加<T>方法相当于没有声明类型为T的类,这时必须在类上面加上泛型T,不然这个方法会报错的。
最后:泛型的声明,必须在方法的修饰符(public,static,final,abstract等)之后,返回值声明之前。

相关文章

  • 源码阅读中的常客--泛型

    了解泛型一个例子足矣,多加应用提高代码的拓展性的同时也能提升逼格! 从左到右第一个T充当修饰符的作用,表示这个被修...

  • 泛型相关总结

    泛型在设计模式和源码分析中有重要的写法支持,学习设计模式和源码分析必须掌握泛型的使用原理 泛型 概述 什么是泛型?...

  • Java:泛型的理解

    本文源自参考《Think in Java》,多篇博文以及阅读源码的总结 前言 Java中的泛型每各人都在使用,但是...

  • 学习RxJava之Java的泛型

    在RxJava的代码中,使用了大量的泛型,如果不熟悉的话,阅读源码非常的困难,比如非常核心的Observable类...

  • Java 泛型你真的理解了吗?

    泛型是JDK 1.5引入的新特性 泛型是jdk1.5后 引入的新特性,泛型在源码中使用的非常广泛,平常开发中也经常...

  • 集合 泛型回顾

    泛型和通配符回顾 最近在阅读源码的过程中发现自己对泛型和通配符的理解好像已经有点遗忘,还有就是有些混乱,今天借着这...

  • Java泛型

    看JDK源码的时候发现好多地方都在使用泛型,但是平常项目开发过程中很少使用到泛型,鉴于自己对泛型也一知半解,所以趁...

  • 如何获取泛型类的子类中声明的泛型类型

    标题好绕啊,还是直接用代码说话比较好。 1、泛型父类Parent源码 2、声明泛型的子类Children源码 问题...

  • 泛型,有点难度,会让很多人懵逼,那是因为你没有看这篇文章!

    文主要讲解泛型类型的解析,泛型算是必须要掌握的一块硬核知识,在很多地方都会用到,这块如果理解了,在阅读其他框架源码...

  • Chapter 7 . 泛型

    阅读原文 Chapter 7 . 泛型 7.1 使用泛型 1.泛型的声明 interface List 和 ...

网友评论

      本文标题:源码阅读中的常客--泛型

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