Java is a class-based, object-oriented programming language that is platform independent and allows developers to create both command-line and graphical user interface applications, games, animations, and internet-based applications. It was developed by James Gosling at Sun Microsystems in 1995 and is widely used for both computer and mobile device programs. Some key features of Java include being object-oriented, simple, platform independent, multithreaded, secure, flexible, and portable.