Apa itu Penegasan di Jawa? Cara menggunakan Assertion di Java

Diterbitkan: 2021-05-20

Daftar isi

Apa itu Penegasan di Jawa?

Asersi di Java digunakan untuk memastikan kebenaran asumsi program apa pun karena asersi dianggap benar ketika dijalankan. Mesin Virtual Java memunculkan kesalahan bernama AssertionError jika pernyataan salah. Pernyataan di Jawa telah menemukan aplikasinya terutama untuk tujuan pengujian. Ekspresi Boolean digunakan bersama dengan pernyataan pernyataan. Pernyataan adalah pernyataan, dan kata kunci 'aset' digunakan untuk melakukan pernyataan di Jawa.

Sintaksis

Berikut ini adalah dua cara di mana pernyataan dilakukan di Jawa:

1. menegaskan ekspresi;

2. menegaskan ekspresi1: ekspresi2;

Bagaimana Cara Menggunakan Assertion di Java?

Pernyataan dinonaktifkan di Java secara default. Perintah berikut digunakan untuk mengaktifkannya:

tes java -ea

(atau)

java -enableassertions Test

di mana Test adalah nama file Java.

Berikut adalah contoh untuk mendemonstrasikan sintaks pernyataan:

Tes kelas publik

{

public static void main(String[] args)

{

nilai int = 13;

menegaskan nilai <= 12 : “Bukan Remaja”;

System.out.println(“Usia remaja adalah ” + nilai);

}

}

Keluaran

Berikut adalah contoh untuk menghasilkan kesalahan pernyataan oleh Java Virtual Machine –

tes kelas

{

public static void main( String args[] )

{

int berat = 30;

tegaskan berat badan >= 20 : ” Kegemukan”;

System.out.println(“Berat adalah “+nilai);

}

}

Keluaran

Setelah mengaktifkan pernyataan,

Keluaran

Pengecualian di utas "utama" java.lang.AssertionError: Overweight

Ini adalah apa yang terlihat seperti:

Sumber

Mengapa Menggunakan Asersi?

Asersi dalam Java digunakan untuk:

  • Periksa apakah asumsi yang dibuat oleh programmer benar atau tidak.
  • Pastikan bahwa jika kode terlihat tidak dapat dijangkau, itu tidak dapat dijangkau.
  • Konfirmasikan bahwa asumsi yang ditulis dalam komentar benar, misalnya:

jika ((y & 1) == 1)

{}

else // y harus genap

{ menegaskan (y % 2 == 0); }

  • pastikan kasus sakelar default tidak tercapai
  • periksa keadaan objek

Asersi di Java digunakan di awal metode dan setelah pemanggilan metode.

Di mana menggunakan Asersi?

Asersi di Java digunakan dalam kasus bersyarat dan ketika kondisi berada di awal metode apa pun. Juga, dalam kasus argumen ke metode pribadi. Kode pengembang menyediakan argumen pribadi dan ketika programmer perlu memeriksa asumsinya mengenai argumen tersebut.

Berikut adalah beberapa situasi di mana penggunaan asersi harus dihindari:

  1. Sesuai spesifikasi yang diberikan oleh Sun Microsystems, pernyataan tidak boleh digunakan saat memeriksa argumen di metode publik karena itu akan menghasilkan pengecualian runtime yang sesuai seperti NullPointerException dan IllegalArgumentException.
  2. Itu tidak boleh digunakan sebagai pengganti pesan kesalahan.
  3. Jika Anda tidak ingin kesalahan apa pun muncul dalam situasi apa pun, lewati penggunaan pernyataan.
  4. Seharusnya tidak digunakan pada argumen baris perintah.
  5. Jika pengguna memberikan kesalahan, pernyataan tidak boleh digunakan untuk memeriksa argumen dalam metode publik. Sebaliknya, penanganan kesalahan harus digunakan.

Bagaimana Cara Menonaktifkan Asersi?

Perintah berikut digunakan untuk menonaktifkan pernyataan di Java:

tes java –da

Atau

java – uji penonaktifan pernyataan

di mana Test adalah nama file Java.

Cara menggunakan Assertion di Java

Contoh 1: Pernyataan Java

kelas publik Utama {

public static void main(String args[]) {

String[] hari kerja = {“Senin”, “Selasa”, “Rabu”,“Kamis”,“Jumat”};

menegaskan hari kerja.panjang == 2;

System.out.println(“Ada ” + hari kerja.panjang + ” hari kerja dalam seminggu”);

}

}

Keluaran

Output berikut dicapai ketika pernyataan dinonaktifkan dan program tidak memiliki kesalahan kompilasi.

Ketika pernyataan diaktifkan, kami akan mendapatkan output berikut:

Pengecualian di utas "utama" java.lang.AssertionError

Ada bentuk lain dari pernyataan asersi yaitu sebagai berikut:

menegaskan kondisi: ekspresi;

Bentuk pernyataan pernyataan ini memiliki ekspresi yang diteruskan ke konstruktor objek AssertionError. Jika kondisinya salah, ekspresi ini memiliki nilai yang ditampilkan sebagai pesan detail kesalahan. Untuk membantu dalam men-debug masalah, pemijatan terperinci menangkap dan mengirimkan informasi kegagalan pernyataan.

Contoh 2: Pernyataan Java dengan contoh ekspresi

kelas publik Utama {

public static void main(String args[]) {

String[] hari kerja = {“Senin”, “Selasa”, “Rabu”,“Kamis”,“Jumat”, “Sab”};

assert weekdays.length == 5: “Hanya ada 5 hari kerja dalam seminggu”;;

System.out.println(“Ada ” + hari kerja.panjang + ” hari kerja dalam seminggu”);

}

}

Keluaran

Pengecualian di utas "utama" java.lang.AssertionError: Hanya ada 5 akhir pekan dalam seminggu

Seperti yang ditunjukkan dalam contoh di atas, ekspresi diteruskan ke konstruktor objek AssertionError. Karena pernyataan diaktifkan dan asumsi salah, pesan yang sesuai ditampilkan saat pengecualian dilemparkan. Pesan tersebut membantu mendiagnosis dan memperbaiki kesalahan yang menyebabkan kegagalan pernyataan.

Pelajari Kursus Rekayasa Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Kesimpulan

Di blog ini, Anda telah mempelajari cara menggunakan pernyataan untuk menguji logika program. Anda juga telah mempelajari mengapa pernyataan tidak dapat digunakan sebagai pengganti pengecualian, dan Anda telah melihat situasi di mana menggunakan pengecualian akan lebih efektif daripada penanganan pengecualian.

Jika Anda ingin mempelajari lebih lanjut tentang Java dan meningkatkan karir pemrograman Anda, jelajahi kursus online Java gratis oleh upGrad, perusahaan pendidikan tinggi online terbesar di India. Kunjungi upGrad untuk informasi lebih lanjut.

Jika Anda tertarik untuk mempelajari lebih lanjut tentang Java, pengembangan perangkat lunak full-stack, lihat Program PG Eksekutif upGrad & IIIT-B dalam Pengembangan Perangkat Lunak Full-stack yang dirancang untuk profesional yang bekerja dan menawarkan 500+ jam pelatihan yang ketat, 9+ proyek, dan penugasan, status Alumni IIIT-B, proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.

Apa itu asersi di Jawa?

Dalam bahasa pemrograman Java, pernyataan adalah metode yang digunakan untuk memastikan bahwa beberapa persyaratan harus diikuti. Kegagalan pernyataan di Java dianggap sebagai kesalahan kompilasi, yaitu jika ada pernyataan dalam kode Anda, kode tidak akan dikompilasi, dan Anda akan mendapatkan pesan kesalahan. Fitur Java ini memungkinkan Anda untuk melindungi kode Anda dari kesalahan run-time yang tidak terduga atau tidak diinginkan. Pernyataan Java assert memungkinkan Anda untuk menguji invarian program Anda saat dijalankan. Pernyataan biasanya digunakan untuk memeriksa bahwa kode tidak memasuki keadaan yang tidak valid. Dalam bahasa lain, Anda mungkin melihat metode kontrak atau ketentuan sebelum/sesudah digunakan untuk tujuan ini.

Bagaimana cara menangani pengecualian di Jawa?

Pengecualian adalah kesalahan runtime, yang berarti itu terjadi saat program sedang berjalan, bukan selama kompilasi. Pengecualian dilemparkan ketika kesalahan telah terjadi dan program tidak dapat melanjutkan. Anda dapat menangani pengecualian dalam tiga cara berbeda: Abaikan pengecualian dan izinkan program untuk keluar. Gunakan kata kunci lempar untuk melempar kembali pengecualian. Gunakan blok try-catch untuk menangani pengecualian. Anda dapat mencatat atau mencetak pengecualian dan kemudian membiarkan program keluar. Anda dapat menggunakan kata kunci keluar untuk menghentikan program. Anda dapat menggunakan kata kunci throw untuk memunculkan kembali pengecualian. Anda dapat menggunakan blok try-catch untuk menangani pengecualian. Ada blok tangkap yang menerima pengecualian dalam argumennya. Ada blok akhirnya yang berjalan apakah pengecualian dilemparkan atau tidak.

Bagaimana cara kerja try-catch di Jawa?

try-catch adalah mekanisme di Java yang memungkinkan Anda untuk menentukan ruang lingkup di mana Anda dapat menangani kesalahan runtime secara terkendali. Ini juga memastikan bahwa aliran eksekusi tidak berhenti sepenuhnya ketika terjadi kesalahan. try and catch adalah dua kata kunci yang digunakan untuk mengimplementasikan penanganan eksepsi. Setiap kali terjadi kesalahan dalam program Anda, blok try akan dieksekusi, dan kesalahan tersebut kemudian akan ditangani oleh blok catch.