zoukankan      html  css  js  c++  java
  • JAVA中的泛型

    泛型的作用在于限制参数类型,让代码更严谨,以后使用时对参数的调用不会出错

    来直接看看Java内部类泛型的实现

     1 // IntelliJ API Decompiler stub source generated from a class file
     2 // Implementation of methods is not available
     3 
     4 package java.util;
     5 
     6 public interface Map<K, V>   {
     7     
     8     int size();
     9     
    10     boolean isEmpty();
    11     
    12     boolean containsKey(java.lang.Object o);
    13     
    14     boolean containsValue(java.lang.Object o);
    15     
    16     V get(java.lang.Object o);
    17     
    18     V put(K k, V v);
    19     
    20     V remove(java.lang.Object o);
    21     
    22     void putAll(java.util.Map<? extends K,? extends V> map);
    23     
    24     void clear();
    25     
    26     java.util.Set<K> keySet();
    27     
    28     java.util.Collection<V> values();
    29     
    30     java.util.Set<java.util.Map.Entry<K,V>> entrySet();
    31     
    32     boolean equals(java.lang.Object o);
    33     
    34     int hashCode();
    35     
    36     static interface Entry<K, V>   {
    37         
    38         K getKey();
    39         
    40         V getValue();
    41         
    42         V setValue(V v);
    43         
    44         boolean equals(java.lang.Object o);
    45         
    46         int hashCode();
    47     }
    48 }

    这个是Java中Map接口的实现

    注意到Map接口中定义的方法,

    1 V put(K k, V v);

    他的返回值类型和参数类型都是K,V,也就是说它没有限制一个强类型,比如Integer或者String

    我们可以根据自己的需要设置泛型是Integer或者String,以此来限制以后传入和参数类型和对参数方法的调用

    我们一般调用的时候会这么写

    1 Map<String, String> strMap = new HashMap<String, String>();

    这里以后我们对strMap进行put操作时,传入的类型就只能是String

    而从strMap中取得元素,这个取得的元素也是最为String类来操作的

    而泛型中的类型也是可以支持继承的

    1 class Sort<E extends Comparable<E>> { /** **/ }
  • 相关阅读:
    (III)AOP:第六节:通知
    (III)AOP:第八节:多切面运行顺序
    (IV)JdbcTemplate
    (III)AOP:第三节:AOP配置与使用
    (III)AOP:第十节:AOP 总结
    (III)AOP:第二节:AOP概述
    (III)AOP:第四节:切入点表达式
    (III)AOP:第九节:XML配置切面
    (III)AOP:第五节:当前连接点
    7月3号
  • 原文地址:https://www.cnblogs.com/zemliu/p/2508556.html
Copyright © 2011-2022 走看看