zoukankan      html  css  js  c++  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")了

    本文为Phil Jing原创文章,未经博主允许不得转载,如有问题请直接回复或者加群。
  • 相关阅读:
    使用MySQL存储过程连续插入多条记录
    为什么编程语言以及数据库要从1970年1月1日开始计算时
    关于shtml页面include问题解决方案
    简单实用的FTP操作类
    js实现完美身份证号有效性验证
    .htaccess文件的建立和rewrite_module的启用
    php冒泡排序
    php实现汉诺塔问题(递归)
    简单的mysql数据库备份程序
    选择排序的php实现
  • 原文地址:https://www.cnblogs.com/phil_jing/p/15615892.html
Copyright © 2011-2022 走看看