Die Hauptfunktion von strictfp in Java besteht darin, auf jeder Plattform das gleiche Ergebnis zu liefern, wenn Gleitkommavariablen in Betrieb sind. Damals, als James Gosling und sein Team Java entwickelten, war Plattformunabhängigkeit einer der Hauptaspekte der Sprache. Kompilieren, Interpretieren und Ausführen desselben Codes auf verschiedenen Maschinen und Sicherstellen, dass das Ergebnis dasselbe ist und nicht vom Prozessor manipuliert wird.
Bei der Berechnung von Gleitkommazahlen auf verschiedenen Plattformen können die Ergebnisse aufgrund der Fähigkeit der Hardware, Gleitkommazahlen durch die CPU zu verarbeiten, variieren. Strictfp stellt sicher, dass Sie auf allen Plattformen die exakte Gleitkomma-Ausgabe erhalten. Mit IEEE 754, dem Standard für Gleitkomma-Arithmetik, wurde strictfp in der JVM-Version 1.2 eingeführt.
Starten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
Bei verschiedenen CPUs können die Standardgenauigkeiten variieren; Die 32-Bit-Präzision unterscheidet sich von der 62-Bit-Genauigkeit usw. für x86-Maschinen. Durch die Verwendung von strictfp wird sichergestellt, dass die Ausgabe nicht aufgrund unterschiedlicher Präzision manipuliert wird, wenn derselbe Code auf verschiedenen Plattformen ausgeführt wird, was bei Plattformen mit höherer Präzision gut funktioniert. Verstehen Sie strictfp als FP Strict, was Floating Point Strict bedeutet.
Strictfp ist einfach und beginnt mit dem Schlüsselwort strictfp. Nachfolgend finden Sie die Syntaxen für eine Klasse, eine Schnittstelle und eine Methode:
1. Klasse
strictfp class sample1{ // code here will me implicitly strictfp. }
2. Eine Schnittstelle
strictfp interface sample2 { // methods here will be implicitly strictfp }
3. Methode
class India { strictfp void population() }
In den obigen Beispielen haben wir einfach das Schlüsselwort strictfp für die Klasse und die Schnittstelle hinzugefügt. Die obigen Beispiele zeigen, wie das Schlüsselwort strictfp verwendet werden muss. Nachfolgend finden Sie ein Beispiel dafür, wo das Schlüsselwort strictfp nicht verwendet werden sollte.
class sample1{ strictfp float a; }
Hier funktioniert die Zuweisung eines strictfp-Schlüsselworts zur Variablen nicht. Es muss unbedingt zusammen mit einer Klasse oder einer Schnittstelle übergeben werden.
Im Folgenden finden Sie Beispiele für die Implementierung in Strictfp:
Wir werden nun die Funktionsweise des Schlüsselworts strictfp demonstrieren, indem wir es in einem Codebeispiel implementieren. Unten ist das Programm dafür:
Code:
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()); } }
Ausgabe:
Erklärung zum obigen Code: Wir haben mit der Klassentestdefinition begonnen, dann haben wir eine Methode mit einem doppelten Datentyp erstellt und ihr das Schlüsselwort strictfp zugewiesen. In add() haben wir zwei Variablen mit den Namen Nummer1 und Nummer2 vom doppelten Datentyp erstellt, und in der nächsten Zeile gibt die Methode die Addition dieser beiden Variablen zurück. Später haben wir unsere Hauptklasse, die ebenfalls mit strictfp ausgestattet ist, und der darin enthaltene Codeblock erbt die strictfp-Eigenschaften. Wir haben ein neues Objekt unserer Klasse erstellt und am Ende haben wir unsere Ausgabe-Print-Anweisung, die einfach den Mehrwert der beiden Variablen ausgibt.
Lassen Sie uns nun das gleiche strictfp-Schlüsselwort in verschiedenen Programmen demonstrieren. Hier werden wir keine Berechnungen durchführen; Stattdessen übergeben wir einen Wert in der Float-Variablen und geben ihn mit einem strictfp-Schlüsselwort aus.
Code:
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(); } }
Ausgabe:
Erklärung zum obigen Code: Dies ist ein weiteres Beispiel, in dem wir das Schlüsselwort strictfp implementiert haben. Ich habe mit der öffentlichen Klasse begonnen und eine neue Variable mit Float-Datentyp und -Wert erstellt. Dann haben wir eine Methode zum Drucken des Float-Werts erstellt und in unserer Hauptklasse ein Objekt unserer Klasse initialisiert. Nach dem Objekt haben wir unsere Ausgabeanweisung, die unsere zuvor erstellte Methode aufruft. Hier ist unsere erstellte Methode strictfp-fähig, was bedeutet, dass der zugewiesene Gleitkommawert unverändert gedruckt wird.
Wie jedes andere Schlüsselwort in jeder Programmiersprache hat strictfp in Java seine Verwendungszwecke und Regeln und um die beabsichtigten Ergebnisse zu erzielen, müssen die angegebenen Regeln befolgt werden. Lassen Sie uns nun einige Regeln verstehen, bevor wir das Schlüsselwort implementieren.
Durch das Befolgen der oben genannten Regeln wird die ordnungsgemäße Verwendung von strictfp sichergestellt und der mögliche Unterschied zwischen der Gleitkomma-Genauigkeit, der zu unterschiedlichen Ergebnissen führt, wird vermieden.
Im Folgenden sind die Vorteile aufgeführt, die das Schlüsselwort mit sich bringt. Die Vorteile der Verwendung von strictfp sind aus Entwicklersicht vielfältig. einige sind unten aufgeführt:
Wir haben verstanden, was ein Strictfp-Schlüsselwort in Java ist, haben dann die Verwendungsmöglichkeiten untersucht und sollten dieses Schlüsselwort nicht verwenden. Es wurde in JVM 1.2 gemäß den Gleitkommastandards von IEE 754 eingeführt. Wir haben das Schlüsselwort strictfp mit Syntaxen demonstriert und sie später in Beispielen implementiert. Es handelt sich um einen Modifikator, der die gleichen Ergebnisse gewährleistet.
Das obige ist der detaillierte Inhalt vonStrictfp in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!