泛型-JDBC-4-最终版-未完

33 篇文章 0 订阅
3 篇文章 0 订阅

转载:https://www.jianshu.com/p/582ae6d91154

  1. Can not issue executeUpdate() for SELECTs 应该是insert into 或update语句,写成了select查询语句
  2. 约束存储到集合中的元素必须是相同的数据类型
  3. 什么是泛型:
                      1):广泛通用的类型.
                      2):代码模板中类型不确定,谁调用该段代码,谁指明类型是什么.
  4. 泛型类:直接在类/接口上定义的泛型.
     使用泛型:
        保证前后类型相同.
        List<String> list = new ArrayList<String>();//该List集合中只能存储String类型的元素.
        因为前后类型相同,Java7开始,泛型的菱形语法<>.
         List<String> list = new ArrayList<>();
         从此以后,使用集合都得使用泛型来约束该集合中元素的类型.底层使用强转.

  5. 泛型方法:在方法上声明泛型.(拓展知识点,大神班前必须看)
        情况1):泛型类中的泛型只能适用于非静态方法,如果需要给静态方法设置泛型,此时使用泛型方法:
        情况2):泛型类中的泛型应该适用于整个类中多个方法,有时候只对某一个方法设置泛型即可.
    -----------------------------------------------------
        一般的,把自定义的泛型作为该方法的返回类型才有意义,而且此时的泛型必须是由参数设置进来的.
        如果没有参数来设置泛型的具体类型,此时的方法一般返回类型为Object即可.

  6. 泛型的通配符和上限和下限:
      泛型的通配符:不知道使用什么类型来接收的时候,此时可以使用?
      此时只能接受数据,不能往该集合中存储数据.

    泛型的上限和下限:用来限定元素的类型必须是X类的子类或相同,  X的父类或相同.

    doWork(List<? extends Number>){ }

  7. 泛型擦除和转换:
       泛型的擦除:  
                          1):泛型编译之后就消失了(泛型自动擦除);
                          2):当把带有泛型的集合赋给不带泛型的集合,此时泛型被擦除(手动擦除).

    堆污染:
        单一个方法既使用泛型的时候也使用可变参数,此时容易导致堆污染问题.
    如:在Arrays类中的asList方法: public static <T> List<T> asList(T... a).

 

通用版

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值