java泛型

来源:互联网 发布:360电话手表软件 编辑:程序博客网 时间:2024/06/07 05:08
1,类泛型
package java.generic;public class Generic<K,V> {private K key;private V value;public Generic() {}public Generic(K key, V value) {this.key = key;this.value = value;}public K getGenenicKey() {return key;}public V getGenenicValue() {return value;}}
2,接口泛型
package java.generic;public interface GeneticInterface<GenenicA> {public GenenicA getGenenicA(GenenicA a);}

package java.generic;public class GinericClass implements GeneticInterface<String> {public String getGenenicA(String a) {return a;}}
3,方法泛型
package java.generic;public class Generic {public static <T> void outOne(T key){System.out.println(key.toString());}public static <T> void outMany(T... args) {for (T t : args) {System.out.println(t);}}public static void main() {outOne("aaaa");outOne(111);outOne(11.11);outMany("ssss", 111, 22.22);}}
4,其他用法
通配符:<?>
上下界:
<? extents T>
<? super T>
5:说明:
泛型只是java编译器的编译check,生成的java字节码会进行类型擦除,也就是说写的泛型并没有在字节码中生成,运行时动态检查。