一般的なJavaの変数を定義しました

定義型の変数

時には、クラスやメソッドの必要性は、変数の型に制約されるように。ここでは、アレイ内の最小の要素を探している、典型的な例です。

public class ArrayAlg {
    public static <T extends Comparable> T min(T[] array){
        if (array == null || array.length == 0){
            return null;
        }
        T smallest = array[0];
        for (int i=0;i<array.length;i++){
            if (smallest.compareTo(array[i])>0){
                smallest = array[i];
            }
        }
        return smallest;
    }
}

上記のコードで パラメータTの種類の制限のタイプの例としては、クラスの(唯一の標準インターフェースcompareToメソッドを含む)同等のインタフェースを実装しなければなりません。Tに制限はありません場合は、そうではないことを確認タイプは、TはcompareToメソッドを持つインスタンス化。

注意

変数の定義された複数種類のは、例えば、有することができます。

<T extends Comparable & Serializable , U extends Comparable>

一方「」パーティションタイプパラメータに、「&」分離するために使用して定義されたタイプ。

Javaでは、クラスは、タイプパラメータを定義したので、複数のインタフェースが、唯一のクラスがあってもよい、複数のインターフェースを実装し、一つだけの親ができます。

<T extends 接口1 & 接口2 & ... & 接口n & 类型1>

おすすめ

転載: www.cnblogs.com/KenBaiCaiDeMiao/p/12638644.html