关于泛型的一点记忆

简介: 晚上和大家分享了关于架构的一些东西,多次提到Java,脑子里突然想起了关于泛型的一些记忆。泛型是程序设计语言的一种特性,主要是引入了类型参数这个概念。它是将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。

晚上和大家分享了关于架构的一些东西,多次提到Java,脑子里突然想起了关于泛型的一些记忆。

泛型是程序设计语言的一种特性,主要是引入了类型参数这个概念。它是将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。它允许程序员在强类型程序设计语言中编写代码时定义一些可变部分,那些部分在使用前必须作出指明。

泛型的定义主要有以下两种:

  • 在程序编码中一些包含类型参数的类型,也就是说泛型的参数只可以代表类,不能代表个别对象。(这是当今较常见的定义)
  • 在程序编码中一些包含参数的类。其参数可以代表类或对象等等。(人们大多把这称作模板)

我学习Java的时候,JDK 1.4是主流版本,Java还没有泛型这个特性,当然,也没听说过泛型这个词,更加没有感觉到它的必要性。J2SE 5.0 (1.5.0) Tiger 发布于 2004年10月,才从此Java才有了泛型。

但可能就是因为这个东西,让我对Java产生了审美上的反感,同时也产生了一些由于思维方式改变带来的不安全感,放弃了主攻Java的念头。

各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。Java中的泛型基本上是在编译器这个层次来实现的。Java在编译期间,所有的泛型信息都会被擦除,比如List和List类型,在编译后都会变成List类型(原始类型)。这也是Java的泛型被称为“伪泛型”的原因。

PHP里没有泛型,不过Hack里是有的。讲真,Hack的语言特性设计的非常不错。

目录
相关文章
|
存储 NoSQL 数据挖掘
MongoDB应用案例
MongoDB应用案例
842 1
|
监控 供应链 搜索推荐
获取店铺商品信息的 API 接口有哪些?
本文介绍了五个常用的电商平台获取店铺商品信息的 API 接口:淘宝、京东、1688、拼多多和慢慢买。每个接口的功能、使用方式及优势各不相同,涵盖商品详情、价格、销量、库存等信息,适用于商品分析、竞品分析、价格监控等场景,帮助商家提升业务效率和市场竞争力。
|
数据可视化 数据挖掘 开发者
如何使用Python进行数据可视化
在现代数据科学中,数据可视化是一项非常重要的技能。通过将数据转化为图表、图形和可交互的界面,我们可以更好地理解数据中的模式、趋势和关系。Python作为一种功能强大而灵活的编程语言,提供了许多库和工具来实现数据可视化。
261 0
|
安全 Linux 网络安全
如何在 Debian VPS 上添加、删除和授予用户 sudo 权限
【4月更文挑战第2天】在 Debian 系统中,创建新用户可降低管理风险。新用户默认无管理员权限,可通过 `adduser` 命令添加。要让用户体验 sudo 提升权限,需将其加入 `sudo` 组,如 `usermod -aG sudo newuser`。用户可通过 `ssh` 或 `su -` 切换登录。了解这些基础操作能有效管理和维护服务器。
1042 0
|
弹性计算 异构计算 AI芯片
阿里云GPU服务器租用Nvidia和AMD性能价格详解
阿里云GPU服务器租用Nvidia和AMD性能价格详解,阿里云GPU服务器租用价格表包括包年包月价格、一个小时收费以及学生GPU服务器租用费用,阿里云GPU计算卡包括NVIDIA V100计算卡、T4计算卡、A10计算卡和A100计算卡,GPU云服务器gn6i可享受3折优惠,阿里云百科分享阿里云GPU服务器租用价格表、GPU一个小时多少钱以及学生GPU服务器收费价格表
1393 0
|
机器学习/深度学习 人工智能 自然语言处理
AI大模型迈入应用时代,每日互动推动“可控大模型”落地
ChatGPT的推出引爆了一场波及全球科技领域的“AI飓风”,越来越多的企业入局大模型赛道,推动AI全面迈进应用时代。在2023数据安全发展大会上,每日互动创始人、CEO方毅谈及大模型,他表示,大模型的能力令人震撼,“吃”的是数据,“吐”的是智能。通过与行业知识结合,大模型能从海量的数据中提取出有价值的信息,为业务决策提供智能支持,但现阶段大模型缺乏对价值观的判断。在实际的业务场景中,垂直行业更需要“可控大模型”。
544 0
HashMap找最大值对应的哪一个键java
HashMap找最大值对应的哪一个键java
258 0
|
存储 关系型数据库 MySQL
|
云安全 安全 网络安全

热门文章

最新文章