Quelle est la différence entre une API Java et une bibliothèque?

Je sais qu'une API est appelé un ensemble de fonctions utilisées pour appeler quelque chose, et d'une bibliothèque est une collection de classes, mais ce qui est réellement de l'API dans le paquet comme java.lang? Je peux me connecter à une classe comme System sans l'aide des API ici, alors pourquoi nous disons que J2SE API plutôt que J2SE paquets?

source d'informationauteur