在Java中怎么用泛型
时间: 2023-09-07 16:11:02 浏览: 45
Java中使用泛型可以提高代码的重用性和安全性,可以在编译时检查类型安全,避免在运行时出现类型错误。
以下是在Java中使用泛型的几种方式:
1. 泛型类
定义一个类时,可以使用泛型来表示类中的某些成员变量或方法的参数类型或返回值类型。
例如:
```
public class MyGenericClass<T> {
private T variable;
public void setVariable(T variable) {
this.variable = variable;
}
public T getVariable() {
return variable;
}
}
```
这里的T是一个类型参数,可以是任何类型,使用时需要指定具体的类型。
2. 泛型方法
在方法中使用泛型也是常见的做法,可以让方法的参数类型和返回值类型变得更加灵活。
例如:
```
public <T> T myGenericMethod(T t) {
return t;
}
```
这里的<T>表示这是一个泛型方法,参数和返回值的类型都是T,使用时需要指定具体的类型。
3. 泛型接口
和泛型类类似,也可以定义泛型接口来表示接口中的某些方法的参数类型或返回值类型。
例如:
```
public interface MyGenericInterface<T> {
public void doSomething(T t);
}
```
这里的T同样是一个类型参数,可以是任何类型,实现这个接口时需要指定具体的类型。
4. 通配符
在使用泛型时,可以使用通配符来表示不确定的类型。
例如:
```
public void myMethod(List<?> list) {
// do something with the list
}
```
这里的?表示不确定的类型,可以是任何类型。在方法中可以对这个List进行操作,但是不能对其添加元素,因为并不知道具体的类型。
以上是在Java中使用泛型的几种方式,通过泛型可以让代码更加灵活和安全。