调用具有通用参数的方法

时间:2015-02-15 17:20:04

标签: java generics methods call

我想了解一些源代码。 如何在main中调用此方法?

public void introSort(T[] array, int max_depth)
    {
        System.out.println(array.length);
    }

我只想在main方法中返回给定数组的长度。如果这是任何帮助,则该方法在具有此声明的类中:

public class IntroSort<T extends Comparable<T>> extends AbstractSort<T> {

[我知道这是通用类型,但我对Java中这个概念的理解对我来说太小了,无法回答我的问题。]

2 个答案:

答案 0 :(得分:1)

数组元素的类型是类T的类型变量IntroSort。这是IntroSort实例的示例,其类型参数设置为Integer

Integer[] array = {1, 2, 3, 4};
IntroSort<Integer> obj = new IntroSort<>();
obj.introSort(array, 1);

编译器会根据T的声明将IntegerIntroSort匹配,这也意味着数组必须是Integer类型。

答案 1 :(得分:0)

T只是在你的课程规范中引用了T.

如果您有一个IntroSort实例,只需使用与实例化类相同的数组类型调用其上的方法。