Java is a high-level programming language and platform developed by James Gosling at Sun Microsystems in 1991. It is designed to be platform independent, meaning that code written in Java can run on any device where a suitable runtime environment exists without modification. The key components that enable platform independence are the Java Virtual Machine (JVM) and the Java Runtime Environment (JRE). The JVM converts Java bytecode into machine code that can be executed by specific CPUs or hardware platforms. The JRE provides the minimum requirements for executing Java applications and includes the JVM, class libraries, and other supporting files.