I know that I haven't picked the easiest language to do so, but I was wondering how to access some basic system and hardware properties in Java.

java.lang.System.getProperties() gives me some basic information, and I can use java.net.InetAddress to get some network related information.
But how can I get, for example, a MAC address, or an installed graphic card brand, or how much RAM is available ?

Is there a unique low level class that will allow me to do so, or will I have to use different parts of the API, or is it just plainly impossible to do with Java alone ?