Fungsi utama strictfp di Java adalah untuk memberikan hasil yang sama pada setiap platform apabila pembolehubah titik terapung sedang beroperasi. Pada masa lalu, ketika James Gosling dan pasukannya membangunkan java, salah satu aspek utama Bahasa ialah Kebebasan Platform. Menyusun, Mentafsir dan Melaksanakan kod yang sama pada mesin yang berbeza dan memastikan hasilnya adalah sama dan tidak dimanipulasi oleh Pemproses.
Apabila mengira titik terapung pada pelbagai platform, keputusan boleh berbeza-beza disebabkan oleh keupayaan perkakasan memproses titik terapung oleh CPU. Strictfp memastikan anda mendapat output titik terapung yang tepat pada semua platform. Dengan IEEE 754, Standard untuk Aritmetik Titik Terapung, strictfp telah diperkenalkan dalam versi JVM 1.2.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Untuk pelbagai CPU, ketepatan standard mungkin berbeza-beza; Ketepatan 32-bit adalah berbeza daripada 62-bit dan seterusnya untuk mesin x86. Penggunaan strictfp memastikan bahawa apabila kod yang sama dilaksanakan pada platform yang berbeza, output tidak boleh dimanipulasi kerana ketepatan yang berbeza, yang berfungsi dengan baik dengan platform ketepatan yang lebih tinggi. Fahami strictfp sebagai FP Strict, bermaksud Floating Point Strict.
strictfp adalah mudah dan bermula dengan kata kunci strictfp. Di bawah ialah sintaks untuk kelas, antara muka dan kaedah:
1. Kelas
strictfp class sample1{ // code here will me implicitly strictfp. }
2. Antara Muka
strictfp interface sample2 { // methods here will be implicitly strictfp }
3. Kaedah
class India { strictfp void population() }
Dalam sampel di atas, kami hanya menambah kata kunci strictfp untuk kelas dan antara muka. Contoh di atas menunjukkan cara strictfp kata kunci mesti digunakan dan kini di bawah ialah contoh tempat untuk tidak menggunakan kata kunci strictfp.
class sample1{ strictfp float a; }
Di sini, memberikan kata kunci strictfp kepada pembolehubah tidak akan berfungsi. Ia hendaklah diluluskan dengan ketat bersama kelas atau antara muka.
Di bawah ialah contoh pelaksanaan dalam Strictfp:
Kami kini akan menunjukkan cara kerja kata kunci strictfp dengan melaksanakan perkara yang sama dalam contoh kod. Di bawah ialah program yang sama:
Kod:
public class Test { public strictfp double add() { double number1 = 10e+10; double number2 = 6e+08; return (number1+number2); } public static strictfp void main(String[] args) { Test example = new Test(); System.out.println(example.add()); } }
Output:
Penjelasan kepada kod di atas: Kami bermula dengan definisi Ujian kelas, kemudian kami mencipta kaedah dengan jenis data berganda dan memberikan kata kunci strictfp bersamanya. Dalam add(), kami mencipta dua pembolehubah bernama number1 dan number2 jenis data berganda, dan dalam baris seterusnya, kaedah mengembalikan penambahan kedua-dua pembolehubah ini. Kemudian kami mempunyai kelas utama kami, yang juga dilengkapi strictfp, dan blok kod di dalamnya mewarisi sifat strictfp. Mencipta objek baharu kelas kami, dan pada akhirnya, kami mempunyai pernyataan cetakan keluaran kami, yang hanya mencetak nilai tambah bagi dua pembolehubah.
Mari kita tunjukkan kata kunci strictfp yang sama ke dalam program yang berbeza. Di sini kami tidak akan melakukan apa-apa pengiraan; sebaliknya, kami akan menghantar nilai dalam pembolehubah apungan dan mencetaknya dengan kata kunci strictfp.
Kod:
public class new_strictfp { float f = 9.381f; strictfp public void displayValue(){ System.out.println(f); } public static void main(String[] args) { new_strictfp Demo = new new_strictfp (); Demo.displayValue(); } }
Output:
Penjelasan kepada kod di atas: Ini adalah satu lagi contoh di mana kami telah melaksanakan kata kunci strictfp. Saya bermula dengan kelas awam dan mencipta pembolehubah baharu dengan jenis dan nilai data apungan. Kemudian mencipta kaedah untuk mencetak nilai apungan, dan dalam kelas utama kami, kami telah memulakan objek kelas kami. Selepas objek, kami mempunyai pernyataan keluaran kami, yang memanggil kaedah yang kami buat sebelumnya. Di sini, kaedah kami yang dibuat adalah didayakan strictfp, bermakna nilai titik terapung yang diberikan akan dicetak seperti sedia ada.
Seperti kata kunci lain dalam mana-mana bahasa pengaturcaraan, strictfp dalam Java mempunyai kegunaan dan peraturannya dan untuk mencapai hasil yang diinginkan, peraturan yang ditetapkan mesti dipatuhi. Sekarang mari kita fahami beberapa peraturan sebelum kita melaksanakan kata kunci.
Mengikut peraturan yang dinyatakan di atas akan memastikan penggunaan strictfp yang betul, dan kemungkinan perbezaan antara ketepatan titik terapung yang memberikan hasil yang berbeza akan dielakkan.
Di bawah adalah kelebihan yang disertakan bersama kata kunci. Kelebihan menggunakan strictfp adalah pelbagai daripada perspektif pembangun; beberapa disenaraikan di bawah:
kami memahami maksud Kata Kunci Strictfp dalam Java, kemudian kami meneroka kegunaannya dan tidak boleh menggunakan kata kunci ini. Ia telah diperkenalkan dalam JVM 1.2 mengikut Piawaian Titik Terapung IEE 754. Kami menunjukkan kata kunci strictfp dengan sintaks dan kemudian melaksanakannya dalam contoh. Ia adalah pengubah suai yang memastikan hasil yang sama.
Atas ialah kandungan terperinci Strictfp di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!