logo

rangefp raktinis žodis java

Java programoje strictfp yra modifikatorius, reiškiantis griežtą slankiojo kablelio reikšmę, kuri nebuvo įtraukta į bazinę Java versiją, kaip buvo įdiegta Java versijoje 1.2. Jis naudojamas Java apriboti slankiojo kablelio skaičiavimus ir užtikrinti tą patį rezultatą kiekvienoje platformoje atliekant operacijas su slankiojo kablelio kintamuoju. 
Slankaus kablelio skaičiavimai priklauso nuo platformos, t. y. skirtinga išvestis (slankiojo kablelio reikšmės) pasiekiama, kai klasės failas vykdomas skirtingose ​​platformose (16/32/64 bitų procesoriuose). Norint išspręsti tokio tipo problemą, JDK 1.2 versijoje buvo įvestas griežtas fp raktinis žodis IEEE 754 slankiojo kablelio skaičiavimo standartai. 

Pastaba: strictfp modifikatorius naudojamas tik su klasių sąsajomis ir metodais, bet netaikomas su kintamaisiais, kaip parodyta toliau:

turi kitą java

1 iliustracija: Raktinių žodžių naudojimas klasėje 



strictfp class Test {  

// All concrete methods here are implicitly strictfp.
}

2 iliustracija: Raktinių žodžių naudojimas su sąsajomis 

strictfp interface Test {   
// All methods here becomes implicitly
// strictfp when used during inheritance.
}

class Car {
// strictfp applied on a concrete method
strictfp void calculateSpeed(){}
}

3 iliustracija: Raktinių žodžių naudojimas su abstrakčiu metodu sąsajoje

strictfp interface Test {  
double sum();

// Compile-time error here
strictfp double mul();
}

Iš aukščiau pateiktų iliustracijų galima padaryti keletą išvadų:

  • Kai klasė arba sąsaja deklaruojama su strictfp modifikatoriumi, visi klasėje / sąsajoje deklaruoti metodai ir visi klasėje deklaruoti įdėtieji tipai yra netiesiogiai griežti fp.
  • strictfp negali naudoti su abstrakčiais metodais. Tačiau jis gali būti naudojamas su abstrakčiomis klasėmis / sąsajomis.
  • Kadangi sąsajos metodai yra netiesiogiai abstraktūs, strictfp negalima naudoti su jokiu metodu sąsajoje.
  • Iš Java 17 versijos griežtas fp raktinis žodis NĖRA būtinas, nes visos slankiojo kablelio išraiškos yra griežtai įvertinamos.

Pavyzdys: 

Java
// Java program to illustrate strictfp modifier // Usage in Classes // Main class class GFG {  // Method 1  // Calculating sum using strictfp modifier  public strictfp double sum()  {  double num1 = 10e+10;  double num2 = 6e+08;  // Returning the sum  return (num1 + num2);  }  // Method 2  // Main driver method  public static void main(String[] args)  {  // Creating object of class in main() method  GFG t = new GFG();  // Here we have error of putting strictfp and  // error is not found public static void main method  System.out.println(t.sum());  } } 

Išvestis
1.006E11 

Išvestis: 

java tostring metodas

Žemiau matome išvestį konsolėje.

Išvesties ekranas' src='//techcodeview.com/img/java/66/strictfp-keyword-in-java.webp' title= 

Sukurti viktoriną