日期:2014-05-20  浏览次数:20817 次

strictfp 是什么意思?native 是什么意思?
java.util.Random里面有这样一个类。

public   final   strictfp   class   StrictMath

strictfp   是什么意思?

这个类里面有一个方法:(开根号的)
public   static   native   double   sqrt(double   a);

native   是什么意思?

从哪里可以搞到
sqrt(double   a)源代码呢?

很想见识一下。


------解决方案--------------------
JAVA的浮点运算可以采用严格或者非严格方式进行运算,strictfp 表示该采用严格标准,即在所有OS中计算的结果都相同,非严格方式则会根据OS的特性采用相适应的算法,不同OS中的结果又差异,但速度比严格的要快

native指示该方法不是用JAVA语言实现(如用C/C++),这样可以使JAVA访问OS的API或者硬件,参见JNI表准