一,泛型的好处:
1.将运行时的问题提前到编译期间
2.避免强制类型转换
创建泛型类:
举个例子,其中<T>的T可以换其他字母
public class Generic<T>{
private T pT;
public T getpT() {
return pT;
}
public void setpT(T pT) {
this.pT = pT;
}
}
实现:
Generic<String> g1 =new Generic<String>();
g1.setpT("name");
System.out.println(g1.getpT());
Generic<Integer> g2 = new Generic<Integer>();
g2.setpT(100);
System.out.println(g2.getpT());
(可自行实现一下)
二,实现泛型方法:
1,改进类:
public class Generic<T>{
public void show(T t) {
System.out.println(t);
}
}
2,改进方法:
public class Generic{
public <T> void show(T t) {
System.out.println(t);
}
}
实现:
Generic g1= new Generic();
g1.show(100);
g1.show("wk");
个人觉得改进方法比较方便
三,泛型接口
定义接口:
public interface Generic<T> {
void show(T t);
}
实现接口:
public class GenericTest<T> implements Generic<T> {
@Override
public void show(T t) {
System.out.println(t);
}
}
主类:
public class TestOne {
public static void main(String[] args) {
GenericTest<Integer> g1 = new GenericTest<Integer>();
g1.show(100);
GenericTest<String> g2 = new GenericTest<String>();
g2.show("wk");
}
}
(今天就到这里,明天见,可以思考一下接口是否也有不同的泛型写法)