Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 14
The development of each programming language is based on
a fact: there is a need to solve a problem that was not
resolved by previous programming languages.
For example, Fortran could have been used to write efficient
programs for scientific problems, but it was not good for system code.
Similarly, Basic was easy to understand but was not robust to
write big programs;
While the assembly language was powerful for writing
efficient programs, but it was not easy to remember and execution. Mr. Jai Mangal Singh Registrar, Exam Java and its Evolution Programming languages such as Cobol, Fortran do not have structural principles. They use the Goto statement to control the flow of the program.
Therefore, ’C’ was invented in 1970, to replace the
assembly language and to create a structured, effective and high-level language
C++ came with object-oriented programming features. C+
+ is the extension of C language which has been used extensively. It is a powerful modern language that includes the power and simplicity of C and the characteristics of OOP. History of java James Gosling, Patrick Naughton, Chris Warth, Mike Sheridan and Ed Frank initiated the Java language project in June 1991. The idea was to develop a language which was platform- independent and which could create embedded software for consumer electronic devices, It took 18 months to develop and had an initial name as Oak, Renamed to Java in 1995, due to copyright issues. Java originally developed by James Gosling at Sun Microsystems and released in 1995. Versions of java • 1995 version 1.0: – The Java development kit was released for free by the sun – 8-Packages 212-Classes – Microsoft and other companies licensed Java • 1997 version 1.1: – 23 -Packages 504-Classes – Improvement include better event handling inner classes , improved JVM. – Microsoft developed its own 1.1 compatible Java Virtual Machine for Internet Explorer – Many browsers in use are still compatible only with 1.1 Versions of java… 1999 version 1.2: -It is also called as the Java 2 platform -59 Packages -1520 Classes -Code & tools distributed as the SDK -A Java foundation class based on swings for improved graphics and user interfaces -Collection API included list sets and hash map Versions of java… . 2000 VERSION 1.3: - 76 Packages - 1842 Classes - Java Sound (API for Digital & MIDI Sound) •2002 VERSION 1.4: - 135 Packages - 2991 Classes - Improved XML support etc.., •2004 VERSION 5.0 (1.5): - 165 Packages - over 3000 Classes - Faster startup metadata formatted Output - Generic to operate on objects of various types Versions of java… 2006 Java SE 6: – Scripting language support 2011 Java SE 7: – JVM Support for dynamic language – String in switch – Allowing underscores in numeric literals 2014 Java SE 8: – for Each() method in Iterable interface. - default and static methods in Interfaces. - Functional Interfaces and Lambda Expressions. Versions of java… 2017 Java SE 9: -Stream API Improvements -Multi-Resolution Image API FUTURE EXPECTED UPDATES: – Application Data-Class Sharing: ... – Garbage Collector Interface Java Attributes • Familiar, Simple, Small • Compiled and Interpreted • Platform-Independent and Portable • Object-Oriented • Robust and Secure • Distributed • Multithreaded and Interactive • High Performance • Dynamic and Extensible Hardware and Programmer Operating System
Source Code Byte Code
Text Editor Compiler Interpreter .java file .class file Notepad, javac java emacs, vi appletviewer netscape Java is both compiled and an interpreted lang. First the java compiler translates source code into the byte code instructions. In the next stage the java interpreter converts the byte code instructions to Machine Code. Architecture Neutral & Portable Java Compiler - Java source code (file with extension .java) to bytecode (file with extension .class) Bytecode - an intermediate form, closer to machine representation A interpreter (virtual machine) on any target platform interprets the bytecode. Porting the java system to any new platform involves writing an interpreter. The interpreter will figure out what the equivalent machine dependent code to run Total Platform Independence Java’s Magic: The Byte Code allows Java to solve both the security and the portability problems is that the output of a Java compiler is not executable code but it is the Bytecode. Bytecode is a highly optimized set of instructions designed to be executed by the Java run-time system, which is called the Java Virtual Machine (JVM). JVM is an interpreter for bytecode. The fact that a Java program is executed by JVM helps solve the major problems associated with downloading programs over the Internet. Translating a Java program into bytecode helps makes it much easier to run a program in a wide variety of environments. This is because only the JVM needs to be implemented for each platform. Rich Class Environment Core Classes language Utilities Input/Output Low-Level Networking Abstract Graphical User Interface Internet Classes TCP/IP Networking WWW and HTML Distributed Programs Thanking you Have patience for more about Java.