在Java中,泛型参数可以通过两种方式进行传递:
- 类型参数传递:可以在类或接口的定义中指定泛型类型参数,然后在创建对象时将具体的类型参数传递给泛型。
public class MyClass {
private T value;
public MyClass(T value) {
this.value = value;
}
public T getValue() {
return value;
}
}
public class Main {
public static void main(String[] args) {
MyClass myClass = new MyClass<>("Hello");
System.out.println(myClass.getValue()); // Output: Hello
}
}
- 方法参数传递:可以在方法的定义中指定泛型类型参数,然后在调用方法时将具体的类型参数传递给泛型。
public class MyClass {
public static void printValue(T value) {
System.out.println(value);
}
}
public class Main {
public static void main(String[] args) {
MyClass.printValue("Hello"); // Output: Hello
}
}
需要注意的是,泛型参数只在编译时起作用,在运行时会被擦除,即在运行时不会保留泛型的类型信息。