The java.lang package provides classes that are fundamental to the design of the Java programming language. This is the most important package of java API. And also the most important class is Object because Object is the parent of all classes. Every classes and instances in java is a child of Object.
There are a lot of instances where we wa have to represent a value of primitive data type as if it is an object thus the java.lang package is very helpful in situation like this. The wrapper classes Boolean, Character, Integer, Long, Float, and Double serve this purpose. An object of type Double, for example, contains a field whose type is double, representing that value in such a way that a reference to it can be stored in a variable of reference type. These classes also provide a number of methods for converting among primitive values, as well as supporting such standard methods as equals and hashCode. The Void class is a non-instantiable class that holds a reference to a Class object representing the type void.