Java was originally developed by Sun Microsystems in 1991 and was originally called Oak. It was designed to be simple, portable, and reliable. Some key features of Java include being platform independent through bytecode, object-oriented design, robust and secure features like memory management and exception handling, and being distributed and interactive through multithreading. Subsequent versions of Java like J2SE 5.0 added additional features like generics and annotations to improve development, and JDBC and XML processing to support databases and web services.