Di Java, @Deprecated ialah anotasi yang membantu dalam memaklumkan pengkompil bahawa kelas, kaedah atau medan tertentu tidak lagi digunakan kerana ia dihentikan atau diganti. Lebih-lebih lagi, amaran harus diberikan apabila sesiapa cuba menggunakannya. Kelebihan utama untuk penamatan adalah dalam kes di mana mana-mana kaedah dinamakan semula atau ditambah, perubahan berlaku. Memandangkan ia boleh menjejaskan kerja program, anotasi yang ditamatkan menjadi sangat berguna. Sintaks, cara kerja dan contoh anotasi @deprecated akan dibincangkan dalam bahagian berikut.
IKLAN Kursus Popular dalam kategori ini PEMODELAN & PENILAIAN KEWANGAN - Pengkhususan | 51 Siri Kursus | 30 Ujian Olok-olokMulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
@deprecated boleh digunakan dalam kelas, antara muka, kaedah, pembolehubah ahli, pembina, dll. Mari kita lihat setiap satu daripada mereka secara terperinci.
@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 . . . . . } }
Seperti yang telah dibincangkan, penamatan kaedah, medan atau kelas dilakukan dengan menggunakan anotasi @tidak digunakan lagi. Selain itu, untuk memberitahu pembangun, teg java doc @deprecated akan disertakan dalam bahagian komen bersama-sama dengan pengubahsuaian.
Di bawah ialah beberapa konteks biasa yang digunakan untuk anotasi ini.
Nota:
Pengkompil tidak akan mengeluarkan amaran yang tidak digunakan dalam kes seperti:
Mari kita lihat beberapa atur cara yang menggunakan ditamatkan dalam Java. Semasa menulis program, sentiasa pastikan anda menggunakan @Deprecated untuk penamatan dan @deprecated untuk tujuan dokumentasi.
Menggunakan nama pembolehubah yang ditamatkan.
Kod:
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); } }
Sampel Output
Dalam atur cara ini, pembolehubah num1 ditamatkan dan Newnum juga diisytiharkan untuk digunakan dan bukannya num1. Jadi, apabila melaksanakan program ini, nilai 10 akan dicetak.
Menggunakan nama kaedah yang tidak digunakan lagi.
Kod:
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(); }}
Sampel Output
Dalam atur cara ini, kaedah bernama method1 ditamatkan dan kaedah lain bernama method2 diisytiharkan untuk digunakan dan bukannya kaedah1. Jadi, apabila melaksanakan program ini, baris akan dicetak.
Menggunakan nama kaedah yang ditamatkan serta nama pembolehubah yang ditamatkan.
Kod:
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); } }
Sampel Output
Dalam program ini, dua atur cara pertama digabungkan supaya pembolehubah num1 ditamatkan dan Newnum juga diisytiharkan untuk digunakan dan bukannya num1. Selain itu, kaedah bernama method1 ditamatkan, dan kaedah lain bernama method2 diisytiharkan untuk digunakan dan bukannya kaedah1. Jadi, apabila melaksanakan program ini, nilai 10 dan satu baris akan dicetak.
Menggunakan pembina yang ditamatkan serta nama pembolehubah yang ditamatkan.
Kod:
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); }}
Sampel Output
Dalam atur cara ini, pembolehubah num1 ditamatkan dan Newnum juga diisytiharkan untuk digunakan dan bukannya num1. Selain itu, pembina yang diisytiharkan pertama juga ditamatkan, dan pembina kedua diisytiharkan untuk digunakan dan bukannya pembina pertama. Jadi, apabila melaksanakan program ini, nilai 10 dan satu baris akan dicetak.
Menggunakan artikel ini, anda akan dapat memahami apa itu penamatan dan situasi berbeza di mana beberapa pengguna boleh menggunakannya. Di samping itu, sintaks, kerja, contoh anotasi @Deprecated juga dibincangkan, bersama-sama dengan coretan kod yang berfungsi dan output sampel.
Atas ialah kandungan terperinci @tidak digunakan lagi di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!