JAVA中的泛型(Generic)
Java泛型(Generic)简介
泛型是jdk1.5版本以后推出来的,表示类型参数化,让java能更具有动态性一些,让类型能变成参数传递。
要我自己感觉的话,泛型本身没啥用,跟反射在一起用,就体现出了它的价值。
Java泛型的三种用法
- 泛型类
public class User<E> implements IUser<String> {
private String nickname;
private String userId;
private String password;
@Override
public void login(String userId, String password){
if(this.userId == userId && this.password == password){
System.out.println("用户登录成功");
}
else
System.out.println("用户登录失败");
}
@Override
public void editNickname(String nickname) {
this.nickname = nickname;
System.out.println("修改昵称成功,当前用户的昵称是:"+this.nickname);
}
}
- 泛型接口
public interface IUser<T> {
void login(String userId,String password);
void editNickname(String nickname);
}
- 泛型方法
public <T> T getInstance(Class<T> c){
T instance = null;
try {
instance = (T)c.newInstance();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return instance;
}