骑士注册 登录
Linux 中国◆开源社区 返回首页

夜域诡士 https://linux.cn/space/15563 [收藏] [复制] [分享] [RSS]

日志

为什么使用泛型程序

已有 1632 次阅读2015-08-27 15:41 |个人分类:Java

1词语解释---咬文嚼字

由于软件开发语言大多是英文的,很多术语词汇是翻译过来的。所以我们首先看一下泛型对应的英文词汇—Generic 百度翻译的解释:“一般的; 类的,属性的; 不受商标保护的; [] 属的,类的”。然后再看一下中文解释,用百度词典解释一下泛:漂浮、透出、浮浅,不切实、一般地、水向四处漫流。

实际上不同语言之间的完全准确翻译是很难的,我们找共同点:一般的、通用的(我们看到Generic ,很多人会想到通用的’,那么我们也加进去)。“型”,跟软件程序联想,也就剩下“类型”了。联系起来就是:一般的类型,通用的类型。

泛型,英文居多是:Generic typegenericsgenericity

 

2以下是百度百科的解释和定义:

泛型是程序设计语言的一种特性。允许程序员在强类型程序设计语言中编写代码时定义一些可变部分,那些部分在使用前必须作出指明。各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。泛型类是引用类型,是堆对象,主要是引入了类型参数这个概念。

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

1.在程序编码中一些包含类型参数的类型,也就是说泛型的参数只可以代表类,不能代表个别对象。(这是当今较常见的定义)

2.在程序编码中一些包含参数的类。其参数可以代表类或对象等等。(人们大多把这称作模板)不论使用哪个定义,泛型的参数在真正使用泛型时都必须作出指明。

 

说这么多恐怕很多人已经迷糊了,简单理解一下,泛型:一般的、通用的类型,还是有参数的,参数只能是类。(完全是个人理解,其中是含义还需细细体会,如有其他不同意见欢迎共同探讨)

 

3泛型的好处

在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,以提高代码的重用率。(侧重点优点是对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。)另一个是类或者对象的多态(一般的多态是指方法的多态)。

 

4泛型程序员可分为三个能力阶段

         基本阶段就是只使用泛型类,如arraylistmap,list等集合.不了解基本原理和工作方式.

         中级阶段:理解基本工作原理和工作方式,能够自定义简单的泛型类和方法

         高级阶段,能够熟练的自定义泛型类,泛型接口,泛型方法.以及复杂的使用

转载注明出处:Linux中国,夜域诡士

返回顶部

分享到微信

打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。