泛型Generic(一)
一、基本概念
1.1 定义
泛型(generic):参数化
类型
的能力。
优点:编译时检查类型错误,而不是运行时检查错误、
1.2 泛型应用范围
1.2.1 泛型接口
public interface Comparable<T> {
public int compareTo(T o);
}
1.2.1 泛型类
public class GenericStack<E> {
private ArrayList<E> stack = new ArrayList<e>();
//进栈
public void push(E e) {
stack.add(e);
}
//出栈
public E pop() {
int top = stack.size()-1;
E element = stack.get(top);
stack.remove(top);
return element;
}
}
1.2.1 泛型方法
泛型方法定义比较特殊,<E>
需放在方法返回类型前,存储类型后(如static
关键字之后)
public class GenericMethodDemo {
public static <E> void print(E[] mess) {
for(int i=0; iu<mess.length; i++) {
System.out.print(mess[i]+"");
}
System.out.print();
}
}
调用带泛型的方法
GenericMethodDemo.<String>print(new String[]{"Beijing","上海"})