Java is a programming language. Java is also an Object Oriented programming language, A type of programming in which programmers define not only the data type of an object, but also the types of operations (functions) that can be applied to the object.
But Java is more than a programming language. Java is also a technology, giving you a complete platform to develop, build and deploy your application. The Java is platform independent, meaning that you compile once and you run everywhere (on various hardware-based platforms).
Java platform gives you the following features:
Development Tools: The development tools provide everything you'll need for compiling, running, monitoring, debugging, and documenting your applications.
Application Programming Interface (API) The API provides the core functionality of the Java programming language.
Deployment Technologies: The JDK software provides standard mechanisms such as the Java Web Start software and Java Plug-In software for deploying your applications to end users.
User Interface Toolkits: The Swing and Java 2D toolkits make it possible to create sophisticated Graphical User Interfaces (GUIs).
Integration Libraries: Integration libraries such as the Java IDL API, JDBCTM API, Java Naming and Directory InterfaceTM ("J.N.D.I.") API, Java RMI, and Java Remote Method Invocation over Internet Inter-ORB Protocol Technology (Java RMI-IIOP Technology) enable database access and manipulation of remote objects.