为什么使用范型?为了使程序更加通用,参数化类属性和方法
可以用其他代替?没有泛型之前,我们采用Object,但是这就要考虑到转型的问题,会很容易出错
关于泛型的几种常见使用
可以用其他代替?没有泛型之前,我们采用Object,但是这就要考虑到转型的问题,会很容易出错
关于泛型的几种常见使用
泛型类
public class MapT <T> {
private T x;
private T y;
public T getX() {
return x;
}
public void setX(T x) {
this.x = x;
}
public T getY() {
return y;
}
public void setY(T y) {
this.y = y;
}
public static void main(String[] args) {
MapT<Double> mapT = new MapT<>();
mapT.setX(3.0);
mapT.setY(4.0);
Double x = mapT.getX();
System.out.println(x);
}
}
泛型接口
interface Text<T>{
void text(T t);
}
public class Good implements Text<String>{
//实现泛型接口
@Override
public void text(String t) {
}
public static void main(String[] args) {
GoodA<String> goodA = new GoodA<String>();//变成泛型类
Good good = new Good();
}
}class GoodA<T> implements Text<T>{
//变成泛型类
@Overridepublic void text(T t) {System.out.println(t);}}
泛型方法
class Test{
public <T> T test(T t){
System.out.println("我是泛型方法"+t);
return null;
}
}
public class Good{
public static void main(String[] args) {
new Test().<String>test("testing");
}
}
//结果为:我是泛型方法testing