Javaでこのコードに出くわしたので、それが何をするのか知りたいです。
public class Max <Key extends Comparable<Key>>{
key[] pq;
....
....
}
Javaでこのコードに出くわしたので、それが何をするのか知りたいです。
public class Max <Key extends Comparable<Key>>{
key[] pq;
....
....
}
上記のメソッド定義は....
public -アクセス修飾子
class -クラスを定義するキーワード
Max -クラスの名前
<Key extends Comparable<Key>> -このクラスはType Parametrizedであり、Keyは型のインターフェースをInterface拡張する です。java.util.ComparableKey
また、ここで注意すべきことの 1 つは、どこにも定義されていないkey[] pq場合は、である必要があると思います。keyKey[] pq
上記のステートメントは、ジェネリック (またはパラメーター化された) 型 Max を定義します。
パラメータKey extends Comparable<Key>は、パラメータがインターフェイスを拡張するインターフェイスのみである可能性があることを意味しますjava.lang.Comparable。
あなたにとってより明確になるかもしれませんがKey extends Comparable<Key>、T extends Comparable<T>
このリンクを見て、さらに詳しく調べたいと思うかもしれません