Java is a general-purpose, object-oriented computer programming language that offers special features that allow programs to take advantage of the power and flexibility of the Internet.
2. Introduction to Java
• Java History
• Features of Java
• Java Versions
• Application Area
3. Features Of Java
• S imp le
• O b jec t -O riented
• Platform
in d ep en d ent
• S ec u red
• Rob u st
• A rc h itec tu re
neutral
• Portab le
• Dy n amic
• Interp reted
• High Performance
• Mu ltith read ed
• Distrib u ted
4. 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)
6. 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
7. Features Of Java
• Object-Oriented
– Forces the programmer to use the classes and object
– Class
• Member variables( data ) and member functions ( methods )
8. 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.
9. Features Of Java
• Architectural Neutral and Interpreted
– compiler generates bytecodes
– Easy to interpret on any machine
– “Write once and run anywhere WORA”
10. Features Of Java
• Powerful
– Networking
– Threads
– Distributed Objects
– Database Access
– Graphics
– Data structure library
– Serialization
– Digital Signatures
16. Major Java Editions
• Standard Edition
• Applications
– Desktop programing
– Applets, Java FX
– Big Data Apps
• Examples
– MindCraft
– Eclipse, Netbeans
– GWT
17. Features Of Java
• Enterprise Edition
– Java EE ( formerly J2EE )
• Applications
– Servlets, JSP, JSF, PrimeFaces
– EJB, Spring and Hibernate
• Examples
– Amazon.com
– Ebay
– Paypal
18. Features Of Java
• Java Micro Edition
– Java running on small devices
• Applications
– CellPhones,embedded, printers
• Examples
– Blackberry, android( optimized java SE )
19. 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
20. 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
21. JVM
• The JVM is an abstract computing machine
• It is responsible for Java's cross-platform portability
22. 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
25. Object Oriented Programing
• Object Oriented methodology
• Advantages of object oriented approach
• Features of Object Oriented approach
26. 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.
27. Object Oriented Programing
• Consists of classes and object.
• Object communicates with each other by passing messages
What is an
object????
28. 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
30. 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()
32. 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
33. Class
• Class is blue print
– Logical structure
– Set of instructions given to JVM , how to create instance ( object ) out
of it.
35. Classes and Objects
• Object communicates with each other by
sending messages.
– Bat Communicates with ball.
36. 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.
38. Quiz
Identify the possible states of a computer
Hint: A) Sleep
Identify the possible state of a media player
39. 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.
45. 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