Saya ingin membuat salah satu metode saya "usang" = tidak digunakan lagi.
Tapi saya tetap ingin memilikinya di API saya. Saya hanya ingin menunjukkan "peringatan" kepada siapa pun yang menggunakan metode itu.
Bagaimana saya bisa mencapainya?
Saya ingin membuat salah satu metode saya "usang" = tidak digunakan lagi.
Tapi saya tetap ingin memilikinya di API saya. Saya hanya ingin menunjukkan "peringatan" kepada siapa pun yang menggunakan metode itu.
Bagaimana saya bisa mencapainya?
Jawaban:
Gunakan @Deprecated
pada metode. Jangan lupa tentang klarifikasi bidang javadoc:
/**
* Does some thing in old style.
*
* @deprecated use {@link #new()} instead.
*/
@Deprecated
public void old() {
// ...
}
reason
dengan nilai default ""
tidak ada salahnya
@deprecated
pesan dalam komentar dapat ditambahkan ke @Deprecated
(satu tempat untuk memperbaiki semuanya) ...
Gunakan @Deprecated
anotasi dan @deprecated
tag JavaDoc.
The @deprecated
tag javadoc digunakan untuk tujuan dokumentasi.
The @Deprecated
penjelasan menginstruksikan compiler bahwa metode ini usang. Inilah yang tertulis dalam dokumen Sun / Oracles tentang masalah ini:
Menggunakan
@Deprecated
anotasi untuk menghilangkan kelas, metode, atau bidang memastikan bahwa semua kompiler akan mengeluarkan peringatan ketika kode menggunakan elemen program itu. Sebaliknya, tidak ada jaminan bahwa semua kompiler akan selalu mengeluarkan peringatan berdasarkan@deprecated
tag Javadoc, meskipun kompiler Sun saat ini melakukannya. Kompiler lain mungkin tidak mengeluarkan peringatan seperti itu. Jadi, menggunakan@Deprecated
anotasi untuk menghasilkan peringatan lebih portabel yang mengandalkan@deprecated
tag Javadoc.
Anda dapat menemukan dokumen lengkap di Bagaimana dan Kapan Menghentikan API
@deprecated
tag javadoc (dalam Java 4-), kompiler menandai metode (kelas, bidang) sudah tidak digunakan lagi dan IDE menunjukkan peringatan, bahkan ketika tidak ada sumber yang tersedia.
karena beberapa penjelasan kecil tidak ada
Gunakan @Deprecated
anotasi pada metode seperti ini
/**
* @param basePrice
*
* @deprecated reason this method is deprecated <br/>
* {will be removed in next version} <br/>
* use {@link #setPurchasePrice()} instead like this:
*
*
* <blockquote><pre>
* getProduct().setPurchasePrice(200)
* </pre></blockquote>
*
*/
@Deprecated
public void setBaseprice(int basePrice) {
}
<br/>
{@link #setPurchasePrice()}
Ada dua hal yang dapat Anda lakukan:
@Deprecated
anotasi ke metode, dan@deprecated
tag ke javadoc metodeAnda harus melakukan keduanya !
Mengutip dokumentasi java tentang hal ini:
Dimulai dengan J2SE 5.0, Anda mencabut kelas, metode, atau bidang dengan menggunakan anotasi @Deprecated. Selain itu, Anda dapat menggunakan tag Javadoc @deprecated memberitahu pengembang apa yang harus digunakan.
Menggunakan anotasi menyebabkan kompiler Java untuk menghasilkan peringatan ketika kelas, metode, atau bidang yang usang digunakan. Kompiler menekan peringatan penghentian jika unit kompilasi yang tidak digunakan menggunakan kelas, metode, atau bidang yang sudah tidak digunakan lagi. Ini memungkinkan Anda untuk membangun API lawas tanpa menghasilkan peringatan.
Anda sangat disarankan untuk menggunakan tag Javadoc @deprecated dengan komentar yang sesuai menjelaskan cara menggunakan API baru. Ini memastikan pengembang akan memiliki jalur migrasi yang bisa diterapkan dari API lama ke API baru