Java Programming - FAQ


1. What is Java?

Java is a programming language expressly designed for use in the distributed environment of the Internet. It was designed to have the "look and feel" of C++, but it is simpler to use than C++ and enforces an object-oriented programming model. Java can be used to create complete applications to run either on the desktop or distributed over networked machines. It can also be used to build a small application module or applet for use in web pages, enabling extended user interaction and graphical capabilities.


2. What are the major characteristics of Java?

Programs are network portable (WORA - "Write Once Run Anywhere", WODA - "Write One Deploy Anywhere"), with the source program compiled into intermediary bytecode, able to run on any Java Virtual Machine (JVM). The JVM interprets the bytecode into code that will run on the chosen hardware platform. Platform-specific versions of programs are thus not necessary.

Java code is robust. Unlike programs written in C++ and perhaps some other languages, Java objects can contain no references to data external to themselves or other known objects. This ensures that an instruction can not contain the address of data storage in another application or in the operating system itself, either of which would cause the program and perhaps the operating system itself to terminate or "crash." The Java virtual machine undertakes checks on each object to ensure integrity.

Java is object-oriented, remaining relatively easy to learn compared to similar languages such as C++ and C#. The language is well structured, strongly typed, well supported by IDE's (Eclipse, NetBeans, JDeveloper, IntelliJ etc) and well documented with excellent support from all the large players in the market.

Java is utilised on many large-scale projects, mainly due to it's robustness and scalability.


3. When was Java introduced?

Java was introduced by Sun Microsystems in 1995. The vast majority of operating system developers (IBM, Microsoft, and almost all flavours of Linux) ship Java compilers as part of their product offerings, as well as using Java in the development of their own tools and products.


4. What is Java Standard Edition (JSE)?

There are two principal products in the Java SE platform family: Java SE Runtime Environment (JRE) and Java Development Kit (JDK).

Java Runtime Environment (JRE)
The JRE provides the libraries, the Java Virtual Machine, and other components to run applets and applications written in the Java language. In addition, two key deployment technologies are part of the JRE: Java Plug-in, enabling applets to run in browsers; and Java Web Start, used for deploying standalone applications over a network. It is also the foundation for the technologies in the Java 2 Platform, Enterprise Edition (J2EE) for enterprise software development and deployment. The JRE does not contain tools and utilities (compilers or debuggers) for developing applets and applications.

Java Development Kit (JDK)
The JDK is a superset of the JRE, and contains the JRE, plus tools such as the compilers and debuggers necessary for developing applets and applications.

5. What is RMI?

Remote Method Invocation, or RMI, is a set of protocols that enables Java objects to communicate remotely with other Java objects. RMI is a relatively simple protocol, but unlike more complex protocols such as CORBA and DCOM, it works only with Java objects. CORBA and DCOM are designed to support objects created in any language.

Essentially, Java RMI allows you to send messages to some live object in another virtual machine, and receive results, while coding in a virtual-machine transparent manner on your local VM.

6. What is Swing?

The Java Swing components are a set of classes essential to building Java thick client applications. The Swing toolkit contains a rich set of Java components, including table controls, folder trees, and buttons.

Swing is part of the Java Foundation Classes (JFC), which includes other features necessary for GUI applications, such as internationalization, drag and drop, accessibility support and pluggable look-and-feel support.

Training Services




Room Rentals


London Office

Find Us
Clerks Court
18-20 Farringdon Lane
Clerkenwell
London
EC1R 3AU
uksales@itraineducation.co.uk
Tel: +44 (0)207 608 1835
Fax: +44 (0)207 490 3465

Edinburgh Office

Find Us
2nd Floor
37 George Street
Edinburgh
West Lothian
EH2 2HN
uksales@itraineducation.co.uk
Tel: +44 (0)131 226 6620
Fax: +44 (0)131 226 6650

Leeds Office

Find Us
Bruntwood, 6th Floor, WESTONE
Wellington Street
Leeds
W. Yorkshire
LS1 1BA
uksales@itraineducation.co.uk
Tel: +44 (0)207 608 1835
Fax: +44 (0)207 490 3465

Manchester Office

Find Us
MWB
Pall Mall Court
61 - 67 King Street
Manchester
M2 4PD
uksales@itraineducation.co.uk
Tel: +44 (0)207 608 1835
Fax: +44 (0)207 490 3465