首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础:一、容器(9)

Java基础:一、容器(9)

作者头像
桑鱼
发布2020-03-16 23:23:16
3130
发布2020-03-16 23:23:16
举报

容器

创建一种对象类型。这种新的对象类型持有其他对象的应用。这个通常通常被称为容器

Java中具有满足不同需要的各种类型的容器,List(用于存储序列),Map(用来建立对象之间的关联),Set(每中对象类型只持有一个),以及诸如队列、树、堆栈等更多的构件

泛型

前提

在JavaSE5之前,容器存储的对象都只具有Java中的通用类型:Object,由于只能存储object类型,所以当将对象引用置入容器时,必须被向上转型为Object,因此会丢失其身份,当把它取回时,就获取了一个对Object对象的引用,而不是对置入时那个类型的对象的引用。所以怎样才能将它变回先前置入容器中时的具有实用接口的对象呢?

这里要用到向下转型为更具体的类型,这种转型方式是向下转型。我们知道,向上转型是安全的,然而向下转型是不安全的,如果向下转型为错误的类型,就会得到被称为异常的运行时错误。

参数化类型机制

创建容器时,就确定要容器要保存的对象的类型,从而不需要向下转型以及消除犯错误的可能。这种解决方案被称为参数化类型机制。一对尖括号,中间包含类型信息,通过这些特征就可以识别对泛型的使用

ArrayList<Shape> shapes = new ArrayList<Shape>();

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 容器
  • 泛型
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档