Heim  >  Artikel  >  Java  >  @deprecated in Java

@deprecated in Java

WBOY
WBOYOriginal
2024-08-30 16:22:15569Durchsuche

In Java ist @Deprecated eine Annotation, die dabei hilft, den Compiler darüber zu informieren, dass die spezifische Klasse, Methode oder das spezifische Feld nicht mehr verwendet wird, da sie eingestellt oder ersetzt wurde. Darüber hinaus sollte eine Warnung ausgegeben werden, wenn jemand versucht, es zu verwenden. Der Hauptvorteil einer veralteten Methode besteht darin, dass Änderungen vorgenommen werden, wenn Methoden umbenannt oder hinzugefügt werden. Da die Funktion des Programms beeinträchtigt werden kann, sind veraltete Annotationen sehr nützlich. Syntax, Funktionsweise und Beispiele der @deprecated-Annotation werden in den folgenden Abschnitten besprochen.

WERBUNG Beliebter Kurs in dieser Kategorie FINANZMODELLIERUNG & BEWERTUNG – Spezialisierung | 51 Kursreihe | 30 Probetests

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Syntax der Java-Annotation @deprecated

@deprecated kann in Klassen, Schnittstellen, Methoden, Mitgliedsvariablen, Konstruktoren usw. verwendet werden. Sehen wir uns jede davon im Detail an.

1. Syntax für die veraltete Schnittstelle

@deprecated
interface sample
{
//methods of the interface
.... .
}

2. Syntax für die veraltete Klasse:

@deprecated
class sample
{
//implementation of the class sample
. . . . .
}

3. Syntax zur Methodenabwertung

@deprecated
class sample
{
@deprecated
Public void samplemethod1()
{
//implementation of the old samplemethod
. . . . .
}
Public void samplemethod2()
{
//implementation of the newsamplemethod
. . . . .
}
}

4. Syntax der Abschreibung der Mitgliedsvariablen

class sample
{
@deprecated
//old field
Public static final float PI=3.14
// new field
Public static final float PI_VALUE=3.14
}

5. Konstruktor-Abwertungssyntax

class sample
{
@deprecated
sample(int a, int b, int c)
{
//implementation of the old constructor
. . . . .
}
sample(intd)
{
//implementation of the new constructor
. . . . .
}
}

Wie funktioniert @deprecated in Java?

Wie bereits besprochen, erfolgt die Ablehnung einer Methode, eines Felds oder einer Klasse mithilfe der Annotation @deprecated. Darüber hinaus wird zur Benachrichtigung des Entwicklers das Java-Doc-Tag @deprecated zusammen mit der Änderung in den Kommentarbereich eingefügt.

Im Folgenden sind einige der häufigsten Kontexte aufgeführt, in denen diese Anmerkung verwendet wird.

  • Erklärung der Konstrukteure
  • Deklaration des formalen Parameters
  • Klassenerklärung
  • Verpackungserklärung
  • Methodenerklärung
  • Deklaration der lokalen Variablen
  • Felderklärung
  • Schnittstellenerklärung
  • Enum-Deklaration

Hinweis:

Der Compiler gibt in folgenden Fällen keine veraltete Warnung aus:

  • Wenn ein veraltetes Element von einem anderen veralteten Element verwendet wird. Das heißt, eine veraltete Klasse ruft einen veralteten Konstruktor auf.
  • Wenn das veraltete Element in einer Entität verwendet wird, die eine Annotation hat @SuppressWarnings(„deprecation“).
  • Wenn das veraltete Element sowohl innerhalb derselben äußersten Klasse deklariert als auch verwendet wird.

Beispiele für @deprecated in Java

Sehen wir uns einige der Programme an, die in Java veraltet sind. Stellen Sie beim Schreiben von Programmen immer sicher, dass Sie @Deprecated für veraltete Programme und @deprecated für Dokumentationszwecke verwenden.

Beispiel #1

Verwendet einen veralteten Variablennamen.

Code:

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);
}
}

Beispielausgabe

@deprecated in Java

In diesem Programm ist eine Variable num1 veraltet und es wird auch eine neue Zahl deklariert, die anstelle von num1 verwendet werden soll. Beim Ausführen dieses Programms wird also der Wert 10 ausgegeben.

Beispiel #2

Verwendet einen veralteten Methodennamen.

Code:

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();
}}

Beispielausgabe

@deprecated in Java

In diesem Programm ist eine Methode namens Methode1 veraltet und eine andere Methode namens Methode2 wird zur Verwendung anstelle von Methode1 deklariert. Wenn Sie also dieses Programm ausführen, wird die Zeile gedruckt.

Beispiel #3

Verwendet einen veralteten Methodennamen sowie den veralteten Variablennamen.

Code:

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);
}
}

Beispielausgabe

@deprecated in Java

In diesem Programm werden die ersten beiden Programme so kombiniert, dass eine Variable „num1“ veraltet ist und außerdem eine neue „num“ zur Verwendung anstelle von „num1“ deklariert wird. Darüber hinaus ist eine Methode namens Methode1 veraltet und eine andere Methode namens Methode2 wird zur Verwendung anstelle von Methode1 deklariert.  Beim Ausführen dieses Programms werden also der Wert 10 und eine Zeile gedruckt.

Beispiel #4

Verwendet einen veralteten Konstruktor sowie den veralteten Variablennamen.

Code:

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);
}}

Beispielausgabe

@deprecated in Java

In diesem Programm ist eine Variable num1 veraltet und es wird auch eine neue Zahl deklariert, die anstelle von num1 verwendet werden soll. Darüber hinaus ist der zuerst deklarierte Konstruktor ebenfalls veraltet und der zweite Konstruktor wird zur Verwendung anstelle des ersten Konstruktors deklariert.  Beim Ausführen dieses Programms werden also der Wert 10 und eine Zeile gedruckt.

Fazit

Anhand dieses Artikels erfahren Sie, was eine veraltete Version ist und in welchen verschiedenen Situationen sie von mehreren Benutzern verwendet werden kann. Darüber hinaus werden Syntax, Funktionsweise und Beispiele der @Deprecated-Annotation sowie funktionierende Codeausschnitte und Beispielausgaben besprochen.

Das obige ist der detaillierte Inhalt von@deprecated in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:EJB in JavaNächster Artikel:EJB in Java