Java/J2EE Programming Training
Introduction to Java
Page 2Classification: Restricted
Agenda
• Java History
• Features of Java
• Java Versions
• Application Area
Page 3Classification: Restricted
Features Of Java
• Simple
• Object-Oriented
• Platform independent
• Secured
• Robust
• Architecture neutral
• Portable
• Dynamic
• Interpreted
• High Performance
• Multithreaded
• Distributed
Page 4Classification: Restricted
History of Java
• 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.
• Firstly, it was called "Greentalk" by James Gosling and file extension was
.gt.
• After that, it was called Oak and was developed as a part of the Green
project.
• Originally developed by James Gosling at Sun Microsystems (which is now a
subsidiary of Oracle Corporation)
Page 5Classification: Restricted
James Gosling
Page 6Classification: Restricted
Features Of Java
• Simple
• Similar to C and C++
• Omits operator overloading, multiple inheritance
• Goto statement is eliminated
• Header files are eliminated
• Explicit use of pointers
• Garbage collection
• A rich set of predefined classes
Page 7Classification: Restricted
Features Of Java
• Object-Oriented
• Forces the programmer to use the classes and object
• Class
• Member variables( data ) and member functions ( methods )
Page 8Classification: Restricted
Features Of Java
• Robust
• designed for writing highly reliable or robust software:
• automatic garbage collection, which prevents memory leaks
• Type safety of data
• Extensive compile tome and runtime checking
• Object Oriented Exception Handling of run time errors
• Divide by zero exception.
Page 9Classification: Restricted
Features Of Java
• Architectural Neutral and Interpreted
• compiler generates bytecodes
• Easy to interpret on any machine
• “Write once and run anywhere WORA”
Page 10Classification: Restricted
Features Of Java
• Powerful
• Networking
• Threads
• Distributed Objects
• Database Access
• Graphics
• Data structure library
• Serialization
• Digital Signatures
Page 11Classification: Restricted
Features Of Java
• Java is Popular
Page 12Classification: Restricted
Features Of Java
• Distributed
• Supports TCP/IP
• RMI
• Access remote objects
via URL
Page 13Classification: Restricted
RMI
Page 14Classification: Restricted
Features of Java
• MultiThreaded
• Parallel processing
Eg: Winword application saving document
every 10 minutes using thread
Page 15Classification: Restricted
Major Java Editions
• Standard Edition
• Enterprise Edition
• Micro Edition
Page 16Classification: Restricted
Major Java Editions
• Standard Edition
• Applications
• Desktop programing
• Applets, Java FX
• Big Data Apps
• Examples
• MindCraft
• Eclipse, Netbeans
• GWT
Page 17Classification: Restricted
Features Of Java
• Enterprise Edition
• Java EE ( formerly J2EE )
• Applications
• Servlets, JSP, JSF, PrimeFaces
• EJB, Spring and Hibernate
• Examples
• Amazon.com
• Ebay
• Paypal
Page 18Classification: Restricted
Features Of Java
• Java Micro Edition
• Java running on small devices
• Applications
• CellPhones,embedded, printers
• Examples
• Blackberry, android( optimized java SE )
Page 20Classification: Restricted
Java SE Versions
Year Version Platform CodeName Features
1996 1 1.0
1997 1.1 1
1998 1.2 2 Playground Swings, Frameworks
2000 1.3 2 Kestrel Assertion, chained exceptions
2002 1.4 2 Merlin
2004 1.5 5 Tiger Generics, Varargs,
Printf, Enhanced for loop
2006 1.6 6 Mustang Updates to collection and swing
2011 1.7 7 Dolphin Diamond operator, Strings in swich
Try-with resources
2014 1.8 8 - Lambda for functional programing,
Streams for bulk updates
Page 21Classification: Restricted
JDK8
• Java development kit
• Bundle of software components that are needed to develop java
application
• JDK consists
• Java Compiler ( javac )
• Java Interpreter (java)
• Java debugger
• Java applet viewer
• Javap
Page 22Classification: Restricted
JVM
• The JVM is an abstract computing machine
• It is responsible for Java's cross-platform portability
Page 23Classification: Restricted
JRE
• The JRE is the software environment in which programs compiled for a
typical JVM implementation can execute
• Implementation of the JVM
• Code necessary to run Java programs
• dynamically link native methods
• manage memory
• handle exceptions
Page 24Classification: Restricted
JIT
Page 25Classification: Restricted
JIT ( Just In Time Compiler)
Page 26Classification: Restricted
Object Oriented Programing
• Object Oriented methodology
• Advantages of object oriented approach
• Features of Object Oriented approach
Page 27Classification: Restricted
Object Oriented Programing
• Software development methodology
• Maps to real world objects
• Graphics Car  Real Cal
• Revolves around objects and classes
• Object can communicate with each other
• Software is divided into modules
• Arranges the object in hierarchy.
Page 28Classification: Restricted
Object Oriented Programing
• Consists of classes and object.
• Object communicates with each other by passing messages
What is an
object????
Page 29Classification: Restricted
Object Oriented Programing
• Object is an instance of class
• Object is an real time entity
• State
• Behavior
• Identity NotePad Code{
filename
Text:
readOnly
Open()
Close()
Minimize()
Maxmize
Save()
}
Object = Instance Of Notepad
Page 30Classification: Restricted
Object States
An Object has state and behavior
Page 31Classification: Restricted
Objects
• Objects have state and behavior
• State: What an object knows about itself
• Behavior :What an object can do.
Object Name
State = charecterstics
Behaviour:
Dog
State:
Name
Breed
Height
Weight
Behaviour:
eat()
run()
walk()
Page 32Classification: Restricted
Classes
• Collection of objects
wheelsSeats
Car Music
GearsA.C
Engine
Page 33Classification: Restricted
Class
• Class consists of
• Member variables and member methods.
• State/ characteristics is represented via member variables
• Member methods defines the responsibility of the class
• Data within object represents its state.
• Messaging Application
• State-> Member Variables
• To:
• Text:
• Behaviour – Member functions
• sendSms
• Forward
• delete
Page 34Classification: Restricted
Class
• Class is blue print
• Logical structure
• Set of instructions given to JVM , how to create instance ( object ) out of
it.
Page 35Classification: Restricted
Messages
To
Text
sendSms
Forward
cancel
Messages1: Tom
To : 123-456-7896
Text : Hi Tom,
sendSms
Forward
cancel
Messages2: Jack
To : 478-963-7896
Text : Hi Jack
sendSms
Save
Delete
Class
Object Tom
Object Jack
Page 36Classification: Restricted
Classes and Objects
• Object communicates with each other by sending messages.
• Bat Communicates with ball.
Page 37Classification: Restricted
Quiz
• John is designing a contact management system . Application should store
the details of a person such as ( name, number, email ) . User should be
able to add a contact ,update a contact and delete a contact.
Name of the class:
Data to be recored.
Functionality of contact management system.
Page 38Classification: Restricted
Contacts
Name:
Number
email
createContact
updateContact
deleteContact
Contacts1: Tom
Name: Tom
Number : 456-789-7895
Email :tom@gmail.com
createContact
updateContact
deleteContact
Contacts2: Jack
Name: Jack
Number 789-896-8965
Email: jack@gmail.com
createContact
updateContact
deleteContact
Page 39Classification: Restricted
Quiz
Identify the possible states of a computer
Hint: A) Sleep
Identify the possible state of a media player
Page 40Classification: Restricted
Question
John, is developing a Calculator application. The application should accept
two numbers from the user and perform addition, subtraction, multiplication
and division on the numbers entered by the user. Help John to design the
problem.
Page 41Classification: Restricted
Advantages Of Object Oriented Approach
• Realistic Modelling
Page 42Classification: Restricted
Advantages Of Object Oriented Programing
• Realistic Modelling
Bike
String color;
String model;
Integer speed;
Accelerate()
Decelerate()
Break()
Page 43Classification: Restricted
Advantages Of Object Oriented Approach
•Code Reusability
Contacts1: Tom
Name: Tom
Number : 456-789-
7895
Email
:tom@gmail.com
createContact
updateContact
deleteContact
Page 44Classification: Restricted
Features Of Object Oriented Programing
• Flexibility to change:
WordAppV1 WordAppV2
Page 45Classification: Restricted
Features Of Object Oriented
•Modularity
Page 46Classification: Restricted
Features
• Information Hiding
• The basic idea is that if code chunk A doesn't really need to know
something about how code chunk B (which it calls) does its job, don't
make it know it. Then, when that part of B changes, you don't have to
go back and change A
Page 47Classification: Restricted
Thank You

Introduction to Java