`

Java泛型自定义设计命名的区别以及好处

    博客分类:
  • Java
阅读更多

根据官方解释,原文章我在oracle官网打开显示404

 

E - Element

集合中使用,比如List<E>

T-Type

声明是类型持有者的名称,比如定义一个泛型dao,可以用BaseDao<T>

K-Key,V-Value

用在键值匹配,比如Map<K,V>

N-Number

这个我没用过

?

表示不确定,比如List 同 List<?>其实是一样的,指的就是java的所有对象

 

泛型用A、B、E、T来表示,仅仅只是个代号,看个人的命名习惯,并没有本质的区别,只是遵循官方的方便读懂与理解。

 

泛型的好处

1、类型安全。 泛型的主要目标是提高 Java 程序的类型安全。通过知道使用泛型定义的变量的类型限制
2、消除强制类型转换。 泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。
3、潜在的性能收益。 泛型为较大的优化带来可能。在泛型的初始实现中,编译器将强制类型转换(没有泛型的话,程序员会指定这些强制类型转换)插入生成的字节码中。但是更多类型信息可用于编译器这一事实,为未来版本的 JVM 的优化带来可能。由于泛型的实现方式,支持泛型(几乎)不需要 JVM 或类文件更改。所有工作都在编译器中完成,编译器生成类似于没有泛型(和强制类型转换)时所写的代码,只是更能确保类型安全而已。

 

使用泛型最大的好处直接的好处就是再也看不到黄色的提示,再也不需要加@SuppressWarnings("unchecked")了

分享到:
评论

相关推荐

    Java语言程序设计教程课件第五章泛型和枚举

    1. 泛型的类型参数只能是引用类型,不能是基本数据类型,因为Java泛型是基于类型擦除的。 2. 泛型可以有多个版本,例如Genericity可以有Genericity、Genericity等不同的类型参数实例。 3. 泛型的参数可以有多个,...

    详解Java泛型及其应用

    Java泛型详解 Java泛型是Java语言中的一种参数化类型机制,能够在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型。泛型的主要目标是提高Java程序的类型安全,消除强制类型转换,提高代码...

    Java开发技术大全(500个源代码).

    second.java 属于一个命名包的类 showDiff.java 演示隐藏与覆盖之间的区别 showSomething.java 测试运行时多态 stupid.java 试图覆盖最终方法的类,它有错误 Sub.java 一个简单的子类 Super.java 一个基类 ...

    java程序设计编码规范

    Java程序设计编码规范是开发高质量、可维护软件的基础,它为开发者提供了一套共同遵循的规则和最佳实践。这些规范涵盖了命名约定、注释、代码布局、错误处理、类和对象设计等多个方面,旨在提高代码的可读性、可维护...

    Java语言与面向对象程序设计题解及实验指导

    《Java语言与面向对象程序设计题解及实验指导》是一本深入浅出的教程,旨在帮助读者掌握Java编程语言的核心概念以及面向对象编程的基本原则。本教程覆盖了从基础语法到高级特性的全面内容,通过丰富的题解和实验指导...

    java程序设计(基础篇)答案

    它的设计目标是简单性、健壮性、安全性和可移植性,使得Java能够广泛应用于桌面应用、服务器端开发、移动应用(尤其是Android平台)以及大数据处理等领域。 基础篇主要涵盖了以下几个关键知识点: 1. **Java环境...

    面向对象程序设计-Java(第二版)

    面向对象程序设计-Java(第二版)是一本深入讲解Java编程的教材,旨在教授如何使用面向对象的思想来构建软件系统。在Java编程中,面向对象是核心概念,它包括类、对象、继承、封装和多态等核心概念。以下是根据标题...

    Java程序设计技巧1001例

    《Java程序设计技巧1001例》是一本深度挖掘Java编程艺术的书籍,它涵盖了大量实战中的程序设计技巧和最佳实践。通过1001个精心挑选的实例,本书旨在帮助开发者提升Java编程能力,解决实际开发中遇到的问题。标签...

    Java语言程序设计》源代码

    《Java语言程序设计》是一本深入讲解Java编程的教材,其源代码包含了多个章节的示例和练习,旨在帮助读者理解和掌握Java编程的核心概念和技术。这些章节按照逻辑顺序组织,覆盖了从基础到进阶的各种主题,对于学习者...

    JAVA5程序员开发南考试大纲

    21. **Java泛型程序设计**:学习泛型的使用,包括类型参数、通配符和泛型接口。 22. **JAVA常用的类和包**:熟悉Java标准库中的类和包,了解接口的定义、实现和继承。 23. **JAVA编码规范**:遵循Java编程的最佳...

    java面向对象程序设计PPT教案

    本教程“java面向对象程序设计PPT教案”为初学者提供了全面而深入的学习资源,旨在帮助理解并掌握面向对象编程的基本原理和Java实现。 一、面向对象编程基础 1. 类与对象:类是面向对象编程中的蓝图,定义了一组...

    Java通用范例开发金典源代码

    - 枚举类型:Java中枚举的创建和使用,以及枚举在设计模式中的应用。 - 泛型:了解泛型的概念,如何在类、接口和方法中使用泛型以提高代码的类型安全性。 3. **异常处理** - 自定义异常:创建和抛出自定义异常,...

    JAVA语言规范 每个JAVA程序员都该读的文档

    Java语言规范详细描述了try-catch-finally语句块的使用,异常的类型系统,以及如何自定义异常。它也提到了受检查异常(Checked Exceptions)和未检查异常(Unchecked Exceptions)的区别。 内存管理和垃圾回收也是...

    Java程序设计入门教程

    14. **异常处理**:学习Java的异常处理机制,如何抛出和捕获异常,以及如何自定义异常。 15. **集合框架**:Java集合框架提供了多种数据结构,如ArrayList、LinkedList、HashSet、HashMap等,学习它们的特点和使用...

    Java核心技术 卷I 基础知识 (原书第9版).pdf

    1. **Java简介**:介绍Java的历史、设计目标以及它在软件开发中的应用领域。讲解了Java的跨平台特性(Write Once, Run Anywhere)和垃圾回收机制。 2. **环境配置**:包括安装JDK,设置环境变量,以及使用Java开发...

    面向对象与Java程序设计课件

    这门课程由朱福喜教授在武汉大学计算机学院讲授,旨在帮助学生掌握面向对象编程思想以及Java语言的精髓。 1. **面向对象编程(OOP)基础** - **类与对象**:面向对象的核心概念,类是对象的模板,定义了对象的属性...

    Java Interview Notes_ 700 Java Interview Questions Answered.pdf

    - **类型擦除**: Java泛型的类型擦除机制消除了泛型类型信息,以保证与旧代码的兼容性。 - **协变与逆变**: 是泛型类型参数的特性,允许子类型代替父类型。 ### 集合框架 - **集合设计方面**: 如何选择合适的集合类...

Global site tag (gtag.js) - Google Analytics