zoukankan      html  css  js  c++  java
  • 转行小白成长路-java篇

    第15章:泛型(上)

      先来一段代码,可以理解动态数组是如何创建的。启发意义甚大,然后再说本章重点,因为时间问题,就不手码了,也不太会调节图片,凑合着把。

      泛型存在的目的主要是为了扩大复用范围,限制范围过大,少些重复代码,和少些代码是两会事。虽然有中心思想,但是实现起来还是满困难的。它的起源除了复用就是容器中说到的,为了给容器设定一点限制,不会总也出错。泛型防止出错的点在于将错误搬到明面上,利用编译时就检查类型信息。还有一样好处就是延迟指定对象类型。

      前六节重点在应用场景上,总也举generator的例子。这种场景针对很重要么?我就按照我觉的是重点的部分列出来几点把,不按照书中场景分了。

    • 泛型类和泛型方法的生成:泛型类只有实现泛型接口才可以,换句话说类同级上的接口能有泛型,抽象类应该也可以,所以继承或者实现的都可以带泛型。但是正常的类是不会带有泛型的,因为这样逻辑上有问题,毕竟类就是对象的“泛型”,表示一类,再来一个泛型?逻辑就不通。泛型方法在返回值前用<T>之类的。
    • 类型参数推断:<? extends Pet>类似这种泛型,在我们进行添加操作的时候会进行判断,可是利用方法的返回值的时候,就会有问题;
    • 对复杂对象的处理。泛型可以一层套一层,可以处理复杂对象,对象又是问题的抽象,换句话说就是,泛型可以用较少的代码处理复杂问题。可以做成更符合特定环境的数据结构。
  • 相关阅读:
    redis系列(五):搭建redis-cluster集群
    redis系列(四):切换RDB备份到AOF备份
    python写一个随机点名软件
    java使用flink集成mybatis每五分钟实时计算小时内用户行为数据
    本地缓存google.guava及分布式缓存redis 随笔
    spring boot+spring security 使用随笔
    MVEL2.0的使用实例(一)
    springboot2.x优雅的整合mybatis
    Springboot全套技术培训和常用框架整合
    私有云篇-[1相关技术]
  • 原文地址:https://www.cnblogs.com/aiwin/p/12452173.html
Copyright © 2011-2022 走看看