Java Platform Overview
The Java platform is unique in that it’s a software-only platform that runs on top of other hardware-based platforms. Hence, the Java Platform lets you develop and deploy Java applications on desktops and servers as well as today’s demanding embeded and real-time environments. Java also includes classes that support the development of web services and provides the foundation for enterprise development.
At an empirical level, the Java Platform consists of three elements:
1.The Java Programming Language : The Java programming language is syntactically similar to C++, but differs in execution. While C++ uses unsafe pointers and programmers are responsible for allocating and freeing memory, the Java programming language uses type-safe object references, and unused memory is reclaimed automatically. Furthermore, the Java programming language eschews multiple inheritance—a likely source of confusion and ambiguity in C++—in favor of a cleaner construct, interfaces.
2.The Java Virtual Machine : The Java virtual machine forms the foundation of the Java platform. This architecture offers several attractive features: The virtual machine can be implemented to run a top a variety of operating systems and hardware, with binary-compatible Java applications operating consistently across many implementations. In addition, the virtual machine provides tight control of executed binaries, enabling safe execution of untrusted code.
3.The Java APIs : An extensive set of standard application programming interfaces (APIs) rounds out the Java platform. These support almost everything you might want your applications to do, from user interface design to cryptography, from CORBA connectivity to internationalization.
Currently, the Java platform comes in three flavors:
Java Platform, Standard Edition (Java SE) is designed for desktop computers. Most often it runs on top of Sun Solaris, Mac OS X, Linux, or Microsoft Windows. It provide all you need to create server applications, desktop applications, and applets that run on almost every popular operating system.
Java Platform, Enterprise Edition (Java EE) is a comprehensive platform for multi-user, enterprise-wide applications. It is based on Java SE and adds APIs for Internet-based server-side computing. As part of J2EE, JSP pages have access to all J2EE components, including JavaBeans and Enterprise JavaBeans components and Java servlets. JSP pages are actually compiled into servlets, so they have all of the benefits of these flexible, server-side Java applications.
Java Platform, Micro Edition (Java ME) is a set of technologies and specifications developed for small devices like pagers, mobile phones, and set-top boxes. Java ME uses smaller-footprint subsets of Java SE components, such as smaller virtual machines and leaner APIs, and defines a number of APIs that are specifically targeted at consumer and embedded devices.