If I look at the StrictMath.toRadians()
in the NetBeans Javadoc window, the top two lines read
java.​lang.​StrictMath public static strictfp double toRadians(double angdeg)
That makes sense, since the JDK I’m using has StrictMath.toRadians()
defined with the strictfp
modifier. However, if I look at the StrictMath
Javadoc online, I see no mention whatsoever of strictfp
. The top line of the toRadians()
Javadoc, for example, reads
public static double toRadians(double angdeg)
I’m using the JDK 1.8.0_241, the runtime is slightly ahead. Fairly certain it’s the Oracle JDK. As far as I can tell, the Javadoc comments in the JDK source for StrictMath
match what is posted in the Oracle page linked above.
Is it that the Javadoc tool ignores the strictfp
modifier or is it that Oracle deliberately took it out of the generated StrictMath
Javadoc HTML pages?
(I tried to generate Javadoc for a dummy strictfp
function, but it seems I’ve got a whole bunch of seemingly unrelated Javadoc errors in the project I tried to do that in).
Advertisement
Answer
As the documentation of javadoc
for Java 8 says:
The
javadoc
command can include the modifierspublic
,protected
,private
,abstract
,final
,static
,transient
, andvolatile
, but notsynchronized
ornative
. Thesynchronized
andnative
modifiers are considered implementation detail and not part of the API specification.
It doesn’t explicitly list strictfp
, but since strictfp
is a feature that affects the implementation of the method, not how it is used, it is excluded for that reason.