1,类泛型
通配符:<?>
上下界:
<? extents T>
<? super T>
5:说明:
泛型只是java编译器的编译check,生成的java字节码会进行类型擦除,也就是说写的泛型并没有在字节码中生成,运行时动态检查。
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字节码会进行类型擦除,也就是说写的泛型并没有在字节码中生成,运行时动态检查。