Java中泛型繼承的使用方法與規則
/**
* 泛型父類,子類的泛型指定數量要>=父類
* 1.保留父類泛型--->子類爲泛型子類
* 2.不保留--->子類按需實現
*
* 屬性與方法類型由其定義位置決定
* 1.子類重寫的方法類型需要與父類方法定義的類型對應
* 2.子類新增的方法類型由子類確定
* 3.子類使用父類的屬性隨父類定義而定
* 4.子類自己定義的屬性由自己定義而定
* @author Administrator
*
*/
public abstract class GenericExtends<T1,T2> {
T1 age;
public abstract void test(T2 name);
}
//保留(泛型類的大寫字母)--->子類爲泛型子類
//1.全部保留
class F1<T1, T2> extends GenericExtends<T1,T2>{
@Override
public void test(T2 name) {
// TODO Auto-generated method stub
}}
//2.部分保留
class F2<T2> extends GenericExtends<Integer,T2>{
@Override
public void test(T2 name) {
// TODO Auto-generated method stub
}}
//不保留--->子類按需實現
//1.具體類型
class F3 extends GenericExtends<Integer,String>{
@Override
public void test(String name) {
// TODO Auto-generated method stub
}}
//2.沒有類型(擦除,類似於Object)
class F4 extends GenericExtends{
@Override
public void test(Object name) {
// TODO Auto-generated method stub
}}