美文网首页js css html
Java--泛型Generics

Java--泛型Generics

作者: 李赫尔南 | 来源:发表于2022-10-16 16:51 被阅读0次

  开发和学习中需要时刻和数据打交道,如何组织这些数据是我们编程中重要的内容。我们一般通过“容器”来容纳和管理数据。那什么是“容器”呢?生活中的容器不难理解,是用来容纳物体的,如锅碗瓢盆、箱子和包等。程序中的“容器”也有类似的功能,就是用来容纳和管理数据。

  事实上,我们之前所学的数组就是一种容器,可以在其中放置对象或基本类型数据。

  数组的优势:是一种简单的线性序列,可以快速地访问数组元素,效率高。如果从效率和类型检查的角度讲,数组是最好的。

  数组的劣势:不灵活。容量需要事先定义好,不能随着需求的变化而扩容。比如:我们在一个用户管理系统中,要把今天注册的所有用户取出来,那么这样的用户有多少个?我们在写程序时是无法确定的。因此,在这里就不能使用数组。

  基于数组并不能满足我们对于“管理和组织数据的需求”,所以我们需要一种更强大、更灵活、容量随时可扩的容器来装载我们的对象。这就是我们今天要学习的容器,也叫集合(Collection)。以下是容器的接口层次结构图:


容器的接口层次结构图.png

  为了能够更好的学习容器,我们首先要先来学习一个概念:泛型。

  泛型是JDK1. 5以后增加的,它可以帮助我们建立类型安全的集合。在使用了泛型的集合中,遍历时不必进行强制类型转换。JDK提供了支持泛型的编译器,将运行时的类型检查提前到了编译时执行,提高了代码可读性和安全性。

  泛型的本质就是“数据类型的参数化”。我们可以把“泛型”理解为数据类型的一个占位符(形式参数),即告诉编译器,在调用泛型时必须传入实际类型。

相关文章

  • Java--泛型Generics

      开发和学习中需要时刻和数据打交道,如何组织这些数据是我们编程中重要的内容。我们一般通过“容器”来容纳和管理数据...

  • 2020-11-05Typescript(2.2)

    泛型 Generics---typeScript中最难的一部分 泛型 Generics---约束泛型 泛型 Gen...

  • [swift 进阶]读书笔记-第九章:泛型 C9P3 使用泛型

    第九章:泛型 Generics 9.3 使用泛型进行代码设计 Designing with Generics 本小...

  • 重学泛型

    什么是泛型? Java泛型(generics)是JDK5中引入的一种参数化类型特性 Java泛型(generics...

  • 泛型

    Java 泛型(generics) Java 泛型(generics)是 JDK 5 中引入的一个新特性, 就是为...

  • [swift 进阶]读书笔记-第九章:泛型 C9P4 泛型的工

    第九章:泛型 Generics 9.4 泛型的工作方式(How Generics Work) 本小节讲了一些关于泛...

  • 14-泛型

    泛型(Generics) 泛型类型 关联类型(Associated Type) 类型约束 协议类型的注意点 泛型解...

  • Objective-C 的轻量泛型

    Lightweight Generics Lightweight Generics 轻量级泛型,轻量是因为这是个纯...

  • Generics(泛型)

    //泛型 Generics // “泛型代码让你能够根据自定义的需求,编写出适用于任意类型、灵活可重用的函数及类型...

  • 泛型(Generics)

    泛型的概念: //在方法名后面加上代表T是类型参数,就像数组里面的Arrayfunc sw...

网友评论

    本文标题:Java--泛型Generics

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