Java History Editions Version Features CSI 3125 Preliminaries

  • Slides: 17
Download presentation
Java History, Editions, Version Features CSI 3125, Preliminaries, page 1

Java History, Editions, Version Features CSI 3125, Preliminaries, page 1

History of Java • Java was Designed by Sun Microsystems • James Gosling, Mike

History of Java • Java was Designed by Sun Microsystems • James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991. • The small team of sun engineers called Green Team. • Originally designed for small, embedded systems in electronic appliances like set-top boxes. • It took 18 months to develop the first working version • Initial Name of Java was OAK James Gosling CSI 3125, Preliminaries, page 2

Why Oak name for java language? • Why Oak? • Oak is a symbol

Why Oak name for java language? • Why Oak? • Oak is a symbol of strength and chosen as a national tree of many countries like U. S. A. , France, Germany, etc. • In 1995, Oak was renamed as "JAVA". CSI 3125, Preliminaries, page 3

Why Java name for java language? • According to James Gosling "Java was one

Why Java name for java language? • According to James Gosling "Java was one of the top choices along with Silk". • Since java was so unique, most of the team members preferred java. • Java is an island of Indonesia where first coffee was produced (called java coffee). • JDK 1. 0 released in(January 23, 1996). CSI 3125, Preliminaries, page 4

Java Version History • There are many java versions that has been released. •

Java Version History • There are many java versions that has been released. • JDK Alpha and Beta (1995) • JDK 1. 0 (23 rd Jan, 1996) • JDK 1. 1 (19 th Feb, 1997) • J 2 SE 1. 2 (8 th Dec, 1998) • J 2 SE 1. 3 (8 th May, 2000) • J 2 SE 1. 4 (6 th Feb, 2002) • J 2 SE 5. 0 (30 th Sep, 2004) • Java SE 6 (11 th Dec, 2006) • Java SE 7 (28 th July, 2011) CSI 3125, Preliminaries, page 5

Java Edition • Java Standard Edition (J 2 SE) – J 2 SE can

Java Edition • Java Standard Edition (J 2 SE) – J 2 SE can be used to develop client-side standalone applications or applets. • Java Enterprise Edition (J 2 EE) – J 2 EE can be used to develop server-side applications such as Java servlets and Java Server. Pages. • Java Micro Edition (J 2 ME). – J 2 ME can be used to develop applications for mobile devices such as cell phones. CSI 3125, Preliminaries, page 6

Features of Java ( java buzzwords. ) • Simple • Object-Oriented • Platform Independent

Features of Java ( java buzzwords. ) • Simple • Object-Oriented • Platform Independent • secured • Robust • Architecture Neutral • Portable • High Performance • Distributed • Multi-threaded CSI 3125, Preliminaries, page 7

Features of Java • Simple According to Sun, Java language is simple because: syntax

Features of Java • Simple According to Sun, Java language is simple because: syntax is based on C++ (so easier for programmers to learn it after C++). removed many confusing and/or rarelyused features e. g. , explicit pointers, operator overloading etc. No need to remove unreferenced objects because there is Automatic Garbage Collection in java. CSI 3125, Preliminaries, page 8

Features of Java • Object-oriented • Java is an Object Oriented language OOPs •

Features of Java • Object-oriented • Java is an Object Oriented language OOPs • In Java everything is Object which has some data and behavior • Like C++ java provides most of the OOPs features • Java is pure OOPs language • Basic Concepts of OOPs are • Object • Class • Inheritance • Polymorphism • Abstraction • Encapsulation CSI 3125, Preliminaries, page 9

Features of Java Platform Independent A platform is the hardware or software environment in

Features of Java Platform Independent A platform is the hardware or software environment in which a program runs. There are two types of platforms softwarebased and hardware-based. Java provides software-based platform. Java can runs on any Operating System. Java is guaranteed to be write-once, run-any where language (WORA) CSI 3125, Preliminaries, page 10

Features of Java • Platform Independent • Java code can be run on multiple

Features of Java • Platform Independent • Java code can be run on multiple platforms e. g. Windows, Linux, Mac/OS etc. • Java code is compiled by the compiler and converted into bytecode. • This bytecode is a platform independent code because it can be run on multiple platforms • i. e. Write Once and Run Anywhere(WORA). CSI 3125, Preliminaries, page 11

Features of Java • secured • Java is secured because • No explicit pointer

Features of Java • secured • Java is secured because • No explicit pointer • Java Program always run in java runtime environment with almost null interaction with OS, hence it is more secure CSI 3125, Preliminaries, page 12

Features of Java • Robust simply means strong. • Java uses strong memory management.

Features of Java • Robust simply means strong. • Java uses strong memory management. • There are lack of pointers that avoids security problem. • There is automatic garbage collection in java. • There is exception handling and type checking mechanism in java. • All these points makes java robust. CSI 3125, Preliminaries, page 13

Features of Java • Architecture-Neutral • There is no implementation dependent features e. g.

Features of Java • Architecture-Neutral • There is no implementation dependent features e. g. size of primitive types is set • compiler generates bytecodes, which have nothing to do with a particular computer architecture • Easy to interpret on any machine CSI 3125, Preliminaries, page 14

Features of Java • Portable • Java may carry the java bytecode to any

Features of Java • Portable • Java may carry the java bytecode to any platform • High-performance • Java enables the creation of cross-platform programs by compiling into an intermediate representation called Java bytecode by using a just-in-time compiler. • This code can be interpreted on any system that provides a Java Virtual Machine. • Most previous attempts at cross platform solutions have done so at the expense of performance. CSI 3125, Preliminaries, page 15

Features of Java • Distributed • We can create distributed applications in java. •

Features of Java • Distributed • We can create distributed applications in java. • RMI and EJB are used for creating distributed applications. • We may access files by calling the methods from any machine on the internet. CSI 3125, Preliminaries, page 16

Features of Java • Multi-threaded • A thread is like a separate program, executing

Features of Java • Multi-threaded • A thread is like a separate program, executing concurrently. • We can write Java programs that deal with many tasks at once by defining multiple threads. • The main advantage of multi-threading is that it shares the same memory. • Threads are important for multi-media, Web applications etc. CSI 3125, Preliminaries, page 17