Java では、@Deprecated は、特定のクラス、メソッド、またはフィールドが停止または置き換えられたために使用されなくなったことをコンパイラーに通知するのに役立つアノテーションです。また、誰かがそれを使用しようとした場合には警告を発する必要があります。非推奨の主な利点は、メソッドの名前が変更または追加された場合に変更が発生することです。プログラムの動作に影響を与える可能性があるため、非推奨のアノテーションが非常に便利になりました。 @deprecated アノテーションの構文、機能、例については、次のセクションで説明します。
広告 このカテゴリーの人気コース 財務モデリングと評価 - 専門分野 | 51 コースシリーズ | 30 回の模擬テスト無料ソフトウェア開発コースを始めましょう
Web 開発、プログラミング言語、ソフトウェア テスト、その他
@deprecated は、クラス、インターフェース、メソッド、メンバー変数、コンストラクターなどで使用できます。それぞれを詳しく見てみましょう。
@deprecated interface sample { //methods of the interface .... . }
@deprecated class sample { //implementation of the class sample . . . . . }
@deprecated class sample { @deprecated Public void samplemethod1() { //implementation of the old samplemethod . . . . . } Public void samplemethod2() { //implementation of the newsamplemethod . . . . . } }
class sample { @deprecated //old field Public static final float PI=3.14 // new field Public static final float PI_VALUE=3.14 }
class sample { @deprecated sample(int a, int b, int c) { //implementation of the old constructor . . . . . } sample(intd) { //implementation of the new constructor . . . . . } }
すでに説明したように、メソッド、フィールド、またはクラスの非推奨は @deprecated アノテーションを使用して行われます。それに加えて、開発者に通知するために、@deprecated java doc タグが変更とともにコメント セクションに含まれます。
以下は、このアノテーションが使用される一般的なコンテキストの一部です。
注:
コンパイラは、次のような場合には非推奨の警告を発行しません。
Java で非推奨となったプログラムをいくつか見てみましょう。プログラムを作成するときは、非推奨には @Deprecated を使用し、ドキュメントの目的には @deprecated を使用するようにしてください。
非推奨の変数名を使用しています。
コード:
public class depexample { /* @deprecated The field num1 will be replaced by * newnum field */ @Deprecated int num1 = 10; //new field final int newnum = 10; public static void main(String a[]){ //create an object for the class depexample obj = new depexample(); //print num System.out.println(obj.num1); } }
サンプル出力
このプログラムでは、変数 num1 が非推奨となり、num1 の代わりに Newnum も使用することが宣言されています。したがって、このプログラムを実行すると、値 10 が出力されます。
非推奨のメソッド名を使用しています。
コード:
public class depexample { /* @deprecated The function method1 will be replaced by method2 */ @Deprecated //old method public void method1(){ System.out.println("This is a deprecated method"); } //new method public void method2(String m1, String m2){ System.out.println(m1+m2); } public static void main(String a[]){ //class object depexample obj = new depexample(); //call old method obj.method1(); }}
サンプル出力
このプログラムでは、method1 という名前のメソッドが非推奨となり、method2 という名前の別のメソッドが method1 の代わりに使用するように宣言されています。したがって、このプログラムを実行すると、次の行が出力されます。
非推奨のメソッド名と非推奨の変数名を使用します。
コード:
public class depexample { /* @deprecated The field num1 will be replaced by * newnum field */ @Deprecated int num1 = 10; //new field final int newnum=10; /* @deprecated The function method1 will be replaced by method2 */ //old method public void method1(){ System.out.println("This is a deprecated method"); } //new method public void method2(String m1, String m2){ System.out.println(m1+m2); } public static void main(String a[]){ //class object depexample obj = new depexample(); //call old method obj.method1(); //print num System.out.println(obj.num1); } }
サンプル出力
このプログラムでは、変数 num1 が非推奨になり、num1 の代わりに Newnum も使用するように宣言されるように、最初の 2 つのプログラムが結合されています。さらに、method1 という名前のメソッドは非推奨となり、method2 という名前の別のメソッドが method1 の代わりに使用するように宣言されています。 したがって、このプログラムを実行すると、値 10 と 1 行が出力されます。
非推奨のコンストラクターと非推奨の変数名を使用します。
コード:
public class depexample { /* @deprecated The field num1 will be replaced by * newnum field */ @Deprecated int num1=10; //new field final static int newnum=10; /* @deprecated The constructor depexamplewill be replaced by second depexample */ //old constructor depexample(int a, int b, int c){ System.out.println("This is a deprecated method"); } //new constructor depexample(float d, int e, float f){ System.out.println(d+f); } public static void main(String a[]){ //class object depexample obj = new depexample(newnum, newnum, newnum); //print num System.out.println(obj.num1); }}
サンプル出力
このプログラムでは、変数 num1 が非推奨となり、num1 の代わりに Newnum も使用することが宣言されています。さらに、最初に宣言されたコンストラクターも非推奨となり、2 番目のコンストラクターが最初のコンストラクターの代わりに使用するように宣言されます。 したがって、このプログラムを実行すると、値 10 と 1 行が出力されます。
이 글을 통해 지원 중단이 무엇인지, 그리고 여러 사용자가 이를 사용할 수 있는 다양한 상황을 이해할 수 있을 것입니다. 그 외에도 @Deprecated 주석의 구문, 작업, 예도 작업 코드 조각 및 샘플 출력과 함께 논의됩니다.
以上が@Javaでは非推奨の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。