このコンテキストでの static と void の目的は何ですか:
public static <T> void sort (List<T> list, Comparator<? super T> c){}
このコンテキストでの static と void の目的は何ですか:
public static <T> void sort (List<T> list, Comparator<? super T> c){}
これは、引数として渡された任意のリストで呼び出すことができるメソッドです。戻り値は必要ありません。これは、完全に静的メソッドで構成される Collections クラスによって提供されます。
static
: メソッドは、呼び出される Collections クラスのインスタンスを必要とせずに呼び出すことができます。
void
: メソッドは何も返しません。
これらはまったく別のものです。
void
method は何も返さないメソッドです。他の言語 (古き良き Fortran や Pascal など) は、そのようなタイプのモジュールに対して異なるキーワードを持っています。Fortran では、何も返さないモジュールが呼び出されsubroutine
、値を返すモジュールが呼び出されfunction
ます。Pascal では and と呼ばprocedure
れfunction
ます。
C プログラミング言語およびその構文を継承する他の言語では、異なるキーワードはありませんが、「ダミー」の戻り値の型void
が導入されました。
static
method は、クラス全体に属するメソッドを意味します。クラスのオブジェクト(インスタンス)を作成しなくても、クラス名を指定して呼び出すことができます。静的メソッドは、ユーティリティ ( Math
JDK のクラスなど) の実装に役立ちます。