I know that an API is called a set of functions used to call something, and a library is a collection of classes, but what is actually API in package like java.lang
A quick rule of thumb just to start with: a library is a collection of java classes, usually but not necessarily located in a jar file, and all public methods of those classes form the API of that library.
(the cleaner the code, the more you can rely on this rule ;) )