You are on page 1of 19

1 Introduction to Java Technology

EME Technologies

Contents
History of Java What is Java? Java Platforms Java Virtual Machine (JVM) Java Development Kit (JDK) Benefits and Features of Java

EME Technologies

Java Introduction
Originally created for consumer electronics (TV, VCR, Freeze, Washing Machine, Mobile Phone). Java - CPU Independent language Internet and Web was just emerging, so Sun turned it into a language of Internet Programming. It allows you to publish a webpage with Java code in it.

EME Technologies

Objectives
Discuss a brief history of Java Define Java Differentiate Java Platforms J2EE J2SE J2ME Describe the Java Virtual Machine (JVM ) Explain the contents of the Java Development Kit (JDK) Describe benefits and features of Java

EME Technologies

Brief History of Java


In 1990, Sun Microsystems began an internal project known as the Green Project to work on a new technology. In 1992, the Green Project was spun off and its interest directed toward building highly interactive devices for the cable TV industry. This failed to materialize. In 1994, the focus of the original team was re-targeted, this time to the use of Internet technology. A small web browser called HotJava was written. Oak was renamed to Java after learning that Oak had already been trademarked. In 1995, Java was first publicly released. In 1996, Java Development Kit (JDK) 1.0 was released. In 2002, JDK 1.4 (codename Merlin) was released, the most widely used version. In 2004, JDK 5.0 (codename Tiger) was released, the latest version.

EME Technologies

James Gosling
James Gosling is generally credited as the inventor of the Java programming language He was the first designer of Java and implemented its original compiler and virtual machine He is also known as the Father of Java He is currently the Chief Technical Officer of Sun Microsystems

EME Technologies

Java Quick Facts


4.5 million Java developers, the largest community of software developers 75% of professional developers in the world use Java 1.75 billion devices run in Java 825 million Java-enabled smart cards 579 million Java-enabled mobile devices 635 Java-enabled phone models 700 million desktops with Java software 220,000 downloads of JDK 1.1 in just 3 weeks, 2 million after a year 2 million downloads for J2EE SDK JavaOne draws 20,000 becoming the worlds largest developer conference Over 400 Java user groups established worldwide Java runs on consumer and embedded devices more than any other software The software that powers the Mars Rover

EME Technologies

Java is Everywhere!
7

What is Java?
A multi-platform, network-centric, object-oriented programming language
Multi-platform It can run on almost any computer platform Network-centric Designed with network in mind the network is the computer Designed for building applications for the Internet Object-oriented It incorporates object-oriented programming model

EME Technologies

Java Platform Editions


A Java Platform is the set of APIs, class libraries, and other programs used in developing Java programs for specific applications There are 3 Java Platform Editions 1. Java 2 Platform, Standard Edition (J2SE) Core Java Platform targeting applications running on workstations 2. Java 2 Platform, Enterprise Edition (J2EE) Component-based approach to developing distributed, multi-tier enterprise applications 3. Java 2 Platform, Micro Edition (J2ME) Targeted at small, stand-alone or connectable consumer and embedded devices

EME Technologies

Java Development Kit (JDK)


Java Development Kit (JDK) Is a set of Java tools for developing Java programs Consists of Java API, Java Compiler, and JVM Java Application Programming Interface (API) Is prewritten code, organized into packages of similar topics Java Virtual Machine (JVM) Is an execution engine that runs compiled Java byte code

JDK JRE
MyProgram.java Java API Java Virtual Machine Hardware - Based Platform

EME Technologies

10

How does JVM work?


A Java program is written
Source Code
public class HelloWorld {
public static void main(String args[ ]) { System.out.println(Hello World!);

The program is compiled


A class file is produced containing bytecodes The bytecodes are interpreted by the JVM The JVM translates bytecodes into native machine code
EME Technologies

} }

Compiler

Class File Bytecodes

Java Virtual Machine

Native Machine Code


11

Running on Different Platforms


class HelloWorld { public static void main(String args[ ]) { System.out.println(Hello World!); } }

Java Program

Compiler

Interpreter

Interpreter

Interpreter
Hello World!

Hello World!

Hello World!

EME Technologies

Win32

Solaris

MacOS
12

Java Milestones
Year 1990 Development Sun decided to developed special software that could be used for electronic devices. A project called Green Project created and head by James Gosling. Explored possibility of using C++, with some updates announced a new language named Oak The team demonstrated the application of their new language to control a list of home appliances using a hand held device.

1991 1992

The World Wide Web appeared on the Internet and transformed the text-based interface to a graphical rich environment. The team developed Web applets (time programs) that could run on all types of computers connected to the Internet. EME Technologies

1993

Java Milestones
Year 1994 Development The team developed a new Web browsed called Hot Java to locate and run Applets. HotJava gained instance success. Oak was renamed to Java, as it did not survive legal registration. Many companies such as Netscape and Microsoft announced their support for Java Java established itself it self as both 1. the language for Internet programming 2. a general purpose OO language. A class libraries, Community effort and standardization, Enterprise Java, Clustering, etc..

1995

1996

1997-

EME Technologies

Overlap of C, C++, and Java

C++

Java

EME Technologies

Java better than C++ ?


No Typedefs, Defines, or Preprocessor No Global Variables No Goto statements No Pointers No Unsafe Structures No Multiple Inheritance No Operator Overloading

EME Technologies

Key Benefits & Features of Java


Write Once, Run Anywhere
Java is portable and platform independent

Network-centric
Can work with resources across a network and multi-tier architectures

Object-oriented
A Java program models a set of objects interacting with each other

Robust
Strong type checking Exception handling mechanism Automatic memory management

Multithreaded
A Java application can run several different processes called threads simultaneously

Security
Can download remote code over a network and run it in a secure environment Security levels and restrictions are highly configurable

EME Technologies

17

Key Points
Java is multi-platform, network-centric, object-oriented programming language. James Gosling is the inventor of Java. There are three platforms of Java: J2SE, J2EE, J2ME. JDK is a set of tools for developing Java applications. JVM interprets Java programs and allows them to run on any platform. Java is portable, robust, multithreaded, and secured.

EME Technologies

18

Questions and Comments

EME Technologies

19

You might also like