I have been programming in Java for a while now. However during all this time there was a concept I never understood and finally now I would like to close this knowledge gap:
A Java class may consists of several parts like methods, members variables, comments and maybe other stuff. I think of these as mere tools for pushing around numbers, string etc. However knowing of the existence of libraries one may find that he can do a lot more with one's code: For example, reading from or writing to files on the local hard drive, recording Audio data, getting the current system time etc. But how does that work?
Java classes and stuff that needs hardware (a microphone for example) are completely separate things! As far as I know the Java libraries I import in my code also include only Java classes, stuff to help pushing around integers, strings etc.
Where is the "exit" point, when one "leaves" the class and works with stuff, that is not somewhere inside the JVM?
EDIT: Found my answers, posted here below:
In short: https://stackoverflow.com/a/557610/5152565
In a bit more detail: https://stackoverflow.com/a/30636097/5152565