La clase Math
La clase "java.lang.Math" es una clase utilitaria cuyos métodos (todos estáticos) nos permiten realizar algunos cálculos matemáticos comunes.
ésta clase representa la librería matemática de Java. El constructor de la clase es privado, por lo que no se puedenn crear instancias de la clase. Sin embargo, Math es una clase publica, para que pueda ser llamada desde cualquier sitio, y estática, para que no haya que inicializarla.
Antiguamente Math implementaba cada uno de sus métodos, pero hoy en día hace uso de la clase "java.lang.StrictMath" para llevar adelante sus tareas, llegando al punto que prácticamente es lo mismo llamar a un método de Math como uno de StrictMath.
StrictMath utiliza librerías nativas (escritas en C) para realizar sus cálculos, asegurando entre otras cosas una mejor performance con números flotantes y repetibilidad de los resultados (si se llama un método con los mismos parámetros obtenemos exactamente el mismo resultado, bit a bit). Concretamente hace uso de la librería fdlibm (Freely Distributable Math Library)