Javaでジェネリックメソッドのメソッドシグネチャを宣言するにはどうすればよいですか?

WBOY
リリース: 2024-05-03 22:51:02
オリジナル
980 人が閲覧しました

ジェネリック メソッド シグネチャには、型変数宣言、パラメーターの型、および戻り値の型が含まれます。指定された型変数はメソッド名の前に置かれ、パラメーターと戻り値の型はプリミティブ型またはジェネリック型になります。たとえば、<T, U> void myMethod(T arg1, U arg2) は、異なる型の 2 つのパラメーターを受け入れるメソッド シグネチャを表します。このメソッド シグネチャを使用すると、汎用 E を使用してさまざまな要素タイプを処理する java.util.LinkedList クラスの add() メソッドなど、さまざまなタイプで使用できる柔軟なコードを作成できます。

如何在 Java 中为泛型方法声明方法签名?

#Java でジェネリック メソッドのメソッド シグネチャを宣言するにはどうすればよいですか?

Java ジェネリックを使用すると、さまざまな型で動作するコードを作成できます。ジェネリック メソッドのシグネチャは、メソッドで使用される型変数を指定します。

構文:

<typeVariable1, typeVariable2, ..., typeVariableN> returnType methodName(parameterType1, parameterType2, ..., parameterTypeN)
ログイン後にコピー

型変数宣言:

メソッド シグネチャのジェネリック型変数宣言は、メソッド名の前に置く必要があります。

例:

2 つのパラメーターを受け入れるジェネリック メソッドを宣言するには、次のシグネチャを使用できます:

<T, U> void myMethod(T arg1, U arg2)
ログイン後にコピー

これは、メソッドが次のパラメーターを受け入れることを意味します。 2 つのパラメータ パラメータ。それぞれ、タイプ T とタイプ U のインスタンスです。

パラメータの型:

ジェネリック メソッドのパラメータの型は、プリミティブ型 (intString## など) にすることができます。 #) またはジェネリック型 (List など)。

例:

次のメソッド シグネチャは、

List 型のパラメーターを受け入れます:

<T> void myMethod(List<T> myList)
ログイン後にコピー

戻り値の型:

ジェネリック メソッドはジェネリックな戻り値の型を持つこともできます。

例:

次のメソッド シグネチャは、

List 型のリストを返します:

<T> List<T> myMethod()
ログイン後にコピー

実際のケース: LinkedList クラスの

add() メソッド

java.util.LinkedListadd クラス The ( ) メソッドは、さまざまなタイプの要素をリンク リストの末尾に追加できるようにする汎用メソッドです。その署名は次のとおりです。

public boolean add(E e)
ログイン後にコピー
ここで、

E は、リンク リストに追加できる要素のタイプを表すジェネリック型変数です。 add() メソッドは、#E 型のパラメータを受け入れ、それをリンク リストの末尾に追加します。

ジェネリックを使用することにより、

add() メソッドは、型固有の専用メソッドを作成することなく、さまざまな型の要素を処理できます。

以上がJavaでジェネリックメソッドのメソッドシグネチャを宣言するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート