SlideShare uma empresa Scribd logo
1 de 28
Course Title: Programming with Java
What is Java?
• Java is a general-purpose computer programming
language that is concurrent, class-based, object-
oriented, and specifically designed to have as few
implementation dependencies as possible.
• It is intended to let application developers "write once,
run anywhere" (WORA), meaning that compiled Java
code can run on all platforms that support Java without
the need for recompilation.
• Java applications are typically compiled to bytecode
that can run on any Java virtual machine (JVM)
regardless of computer architecture.
Major features
• Designed by : James Gosling and Sun
Microsystems. The language was initially called
Oak after an oak tree .
• Developer : Oracle Corporation
• Stable release : Java Standard Edition 8 Update
60 (1.8.0_60) / August 18, 2015
• Implementation language: C and C++
• OS : Cross-platform (multi-platform)
• Filename extensions: .java , .class, .jar (Java
Archive)
WORA/ WORE
• "Write once, run anywhere" (WORA), or sometimes
write once, run everywhere (WORE)
• Ideally, this means Java can be developed on any
device, compiled into a standard bytecode and be
expected to run on any device equipped with a Java
virtual machine (JVM).
• The installation of a JVM or Java interpreter on chips,
devices or software packages has become an industry
standard practice.
• This means a programmer can develop code on a PC
and can expect it to run on Java enabled cell phones, as
well as on routers and mainframes equipped with Java,
without any adjustments.
What is Bytecode in Java ?
• Bytecode is nothing but the intermediate representation of
Java source code which is produced by the Java compiler by
compiling that source code.
• This byte code is an machine independent code.
• It is not completely a compiled code but it is an
intermediate code somewhere in the middle which is later
interpreted and executed by JVM.
• Bytecode is a machine code for JVM.
• But the machine code is platform specific whereas
bytecode is platform independent that is the main
difference between them.
• It is stored in .class file which is created after compiling the
source code.
What is Bytecode in Java ?
Java applet
• An applet is a special kind of Java program that is
designed to be transmitted over the internet and
automatically executed by a Java compatible web
browser.
• A Java applet is a small application which is
written in Java and delivered to users in the form
of bytecode.
• The user launches the Java applet from a web
page, and the applet is then executed within a
Java Virtual Machine (JVM) in a process separate
from the web browser itself.
Java applet
• A Java applet can appear in a frame of the web
page, a new application window, Sun's
AppletViewer, or a stand-alone tool for testing
applets. Java applets were introduced in the first
version of the Java language, which was released
in 1995.
• Java applets can be written in any programming
language that compiles to Java bytecode. They
are usually written in Java, but other languages
such as Jython,JRuby,Pascal,Scala, or Eiffel (via
SmartEiffel) may be used as well.
Principles
There were five primary goals in the creation of the
Java language:
• It must be "simple, object-oriented, and familiar".
• It must be "robust and secure".
• It must be "architecture-neutral and portable".
• It must execute with "high performance".
• It must be "interpreted, threaded, and dynamic".
Java Buzzwords
• Simple
• Secure
• Portable
• Object oriented
• Robust
• Multithreaded
• Architecture neutral
• Interpreted
• High performance
• Distributed
• Dynamic
Java Buzzwords
• Simple:
•Easy to learn
•Easy to write programs using Java
•More expressive.
•Most of the complex or confusing features in
C++ are removed in Java like pointers etc..
Java Buzzwords
• Secure:
•Java provides data security through
encapsulation.
•Also we can write applets in Java which provides
security.
•An applet is a small program which can be
downloaded from one computer to another
automatically.
•There is no need to worry about applets
accessing the system resources which may
compromise security.
Java Buzzwords
• Portable:
•Applications written using Java are portable
in the sense that they can be executed on any
kind of computer containing any CPU or any
operating system.
•When an application written in Java is
compiled, it generates an intermediate code
file called as “bytecode”.
•Bytecode helps Java to achieve portability.
Java Buzzwords
• Object - Oriented:
•Java follows object oriented model.
•So, it supports all the features of object
oriented model like:
Encapsulation
Inheritance
Polymorphism
Abstraction
Java Buzzwords
• Robust:
•A program or an application is said to be
robust(reliable) when it is able to give some
response in any kind of context.
•Some of those features are:
1. Type checking
2. Exception handling
Java Buzzwords
• Multithreaded:
•Java supports multithreading which is not
supported by C and C++.
•A thread is a light weight process.
•Multithreading increases CPU efficiency.
•A program can be divided into several threads
and each thread can be executed concurrently or
in parallel with the other threads.
•Real world example for multithreading is
computer. While we are listening to music, at
the same time we can write in a word document
or play a game.
Java Buzzwords
• Architecture - Neutral:
•Bytecode helps Java to achieve portability.
•Bytecode can be executed on computers
having any kind of operating system or any
kind of CPU.
•Since Java applications can run on any kind of
CPU, Java is architecture – neutral.
Java Buzzwords
• Interpreted and High Performance:
•In Java 1.0 version there is an interpreter for
executing the bytecode. As interpreter is quite
slow when compared to a compiler, java
programs used to execute slowly.
•After Java 1.0 version the interpreter was
replaced with JIT(Just-In-Time) compiler.
•This enhances the program performance
means it executes rapidly.
Java Buzzwords
• Distributed:
•Java supports distributed computation using
Remote Method Invocation (RMI) concept.
•The server and client(s) can communicate
with one another and the computations can
be divided among several computers which
makes the programs to execute rapidly.
•In distributed systems, resources are shared.
Java Buzzwords
• Dynamic:
•The Java Virtual Machine(JVM) maintains a
lot of runtime information about the program
and the objects in the program.
•Libraries are dynamically linked during
runtime.
•So, even if you make dynamic changes to
pieces of code, the program is not effected.
How Java achieved Platform
Independency ?
How Java achieved Platform
Independency ?
• Java achieved platform independency by
moving machine language generation from
compilation phase to execution phase by
introducing bytecodes and JVM.
How Java achieved Platform
Independency ?
How Java achieved Platform
Independency ?
What is the most important feature of
Java?
• Java is a platform independent language. This
is most important feature of Java language.
Platform independent language means
programs written in Java will work on any
computer that has Java installed on it,
regardless of operating system.
• Whereas Multithreading, AWT and Event
Handling, Networking, Database Connection
are important features of java.
Types of Java Software
• Java software is divided into two sub products
• 1) jdk (Java Development Kit)
• 2) jre (Java Run time Environment)
• jdk has both "Compiler + JVM"
• jre has only "JVM"
• JVM is a sub-part of jre and jre is a sub-part of jdk. So
in order to run any java application jre software is
sufficient but if we need to compile and execute the
java program we have to install jdk software.
Types of Java Software
This diagram shows the difference between jdk,jre and JVM.
Thanks for your patience.

Mais conteúdo relacionado

Mais procurados

Basic javaprogramming(session1)
Basic javaprogramming(session1)Basic javaprogramming(session1)
Basic javaprogramming(session1)
Barm Bannasan
 

Mais procurados (20)

Java presentation
Java presentationJava presentation
Java presentation
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Java history 01
Java history 01Java history 01
Java history 01
 
Java presentation
Java presentation Java presentation
Java presentation
 
Important features of java
Important features of javaImportant features of java
Important features of java
 
Java Presentation
Java PresentationJava Presentation
Java Presentation
 
Java Presentation
 Java Presentation Java Presentation
Java Presentation
 
Java introduction
Java introductionJava introduction
Java introduction
 
Lec 3 01_aug13
Lec 3 01_aug13Lec 3 01_aug13
Lec 3 01_aug13
 
Java features
Java featuresJava features
Java features
 
The Evolution of Java
The Evolution of JavaThe Evolution of Java
The Evolution of Java
 
Basic javaprogramming(session1)
Basic javaprogramming(session1)Basic javaprogramming(session1)
Basic javaprogramming(session1)
 
Java 1
Java 1Java 1
Java 1
 
JAVA FEATURES
JAVA FEATURESJAVA FEATURES
JAVA FEATURES
 
itft-Java evolution
itft-Java evolutionitft-Java evolution
itft-Java evolution
 
Java (1)
Java (1)Java (1)
Java (1)
 
Presentation5
Presentation5Presentation5
Presentation5
 
History of Java 1/2
History of Java 1/2History of Java 1/2
History of Java 1/2
 
Java fundamentals
Java fundamentalsJava fundamentals
Java fundamentals
 
Chapter 1 java
Chapter 1 java Chapter 1 java
Chapter 1 java
 

Destaque

WindowsAzureSDK1.7
WindowsAzureSDK1.7WindowsAzureSDK1.7
WindowsAzureSDK1.7
Saravanan G
 
KSC GLOBAL SOLUTIONS
KSC GLOBAL SOLUTIONSKSC GLOBAL SOLUTIONS
KSC GLOBAL SOLUTIONS
KSC Global
 
ServiceFabric-Arch
ServiceFabric-ArchServiceFabric-Arch
ServiceFabric-Arch
Saravanan G
 
WindowsAzureIAAS
WindowsAzureIAASWindowsAzureIAAS
WindowsAzureIAAS
Saravanan G
 
Windows Azure Marketplace
Windows Azure MarketplaceWindows Azure Marketplace
Windows Azure Marketplace
Saravanan G
 

Destaque (16)

WindowsAzureSDK1.7
WindowsAzureSDK1.7WindowsAzureSDK1.7
WindowsAzureSDK1.7
 
Cardiology Personal Statement and Guide for Fellows in 2017
Cardiology Personal Statement and Guide for Fellows in 2017Cardiology Personal Statement and Guide for Fellows in 2017
Cardiology Personal Statement and Guide for Fellows in 2017
 
1 java intro
1 java intro1 java intro
1 java intro
 
KSC GLOBAL SOLUTIONS
KSC GLOBAL SOLUTIONSKSC GLOBAL SOLUTIONS
KSC GLOBAL SOLUTIONS
 
ServiceFabric-Arch
ServiceFabric-ArchServiceFabric-Arch
ServiceFabric-Arch
 
Σημειώσεις wordpress
Σημειώσεις wordpressΣημειώσεις wordpress
Σημειώσεις wordpress
 
Wcat
WcatWcat
Wcat
 
WindowsAzureIAAS
WindowsAzureIAASWindowsAzureIAAS
WindowsAzureIAAS
 
PowerShell-2
PowerShell-2PowerShell-2
PowerShell-2
 
#_ varible function
#_ varible function #_ varible function
#_ varible function
 
PowerShell-1
PowerShell-1PowerShell-1
PowerShell-1
 
airento
airentoairento
airento
 
AzureDocumentDB
AzureDocumentDBAzureDocumentDB
AzureDocumentDB
 
Windows Azure Marketplace
Windows Azure MarketplaceWindows Azure Marketplace
Windows Azure Marketplace
 
Plano de aula
Plano de aulaPlano de aula
Plano de aula
 
Plano de aula
Plano de aulaPlano de aula
Plano de aula
 

Semelhante a 1 java introduction

1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
10322210023
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
CDSukte
 
Java chapter 1 basic introduction Unit-1.pptx
Java chapter  1 basic introduction Unit-1.pptxJava chapter  1 basic introduction Unit-1.pptx
Java chapter 1 basic introduction Unit-1.pptx
noosdysharma
 
JAVA_Day1_BasicIntroduction.pptx
JAVA_Day1_BasicIntroduction.pptxJAVA_Day1_BasicIntroduction.pptx
JAVA_Day1_BasicIntroduction.pptx
Murugesh33
 

Semelhante a 1 java introduction (20)

Java buzzwords
Java buzzwordsJava buzzwords
Java buzzwords
 
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptxJAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
 
Java Ch 1.pptx
Java Ch 1.pptxJava Ch 1.pptx
Java Ch 1.pptx
 
Java Introduction
Java IntroductionJava Introduction
Java Introduction
 
Introduction To Java history, application, features.pptx
Introduction To Java history, application, features.pptxIntroduction To Java history, application, features.pptx
Introduction To Java history, application, features.pptx
 
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
 
unit1.pptx
unit1.pptxunit1.pptx
unit1.pptx
 
basic core java up to operator
basic core java up to operatorbasic core java up to operator
basic core java up to operator
 
Introduction to Java
Introduction to JavaIntroduction to Java
Introduction to Java
 
1.Intro--Why Java.pptx
1.Intro--Why Java.pptx1.Intro--Why Java.pptx
1.Intro--Why Java.pptx
 
Java chapter 1 basic introduction Unit-1.pptx
Java chapter  1 basic introduction Unit-1.pptxJava chapter  1 basic introduction Unit-1.pptx
Java chapter 1 basic introduction Unit-1.pptx
 
Chapter-1 Introduction.pptx
Chapter-1 Introduction.pptxChapter-1 Introduction.pptx
Chapter-1 Introduction.pptx
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
 
Lecture-01 _Java Introduction CS 441 Fast
Lecture-01 _Java Introduction CS 441 FastLecture-01 _Java Introduction CS 441 Fast
Lecture-01 _Java Introduction CS 441 Fast
 
JAVA_Day1_BasicIntroduction.pptx
JAVA_Day1_BasicIntroduction.pptxJAVA_Day1_BasicIntroduction.pptx
JAVA_Day1_BasicIntroduction.pptx
 
JAVAPart1_BasicIntroduction.pptx
JAVAPart1_BasicIntroduction.pptxJAVAPart1_BasicIntroduction.pptx
JAVAPart1_BasicIntroduction.pptx
 
Introduction to JAVA
Introduction to JAVAIntroduction to JAVA
Introduction to JAVA
 
Class_01.pptx
Class_01.pptxClass_01.pptx
Class_01.pptx
 

Último

Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 

Último (20)

UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects
 
Minimum and Maximum Modes of microprocessor 8086
Minimum and Maximum Modes of microprocessor 8086Minimum and Maximum Modes of microprocessor 8086
Minimum and Maximum Modes of microprocessor 8086
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineering
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 

1 java introduction

  • 2. What is Java? • Java is a general-purpose computer programming language that is concurrent, class-based, object- oriented, and specifically designed to have as few implementation dependencies as possible. • It is intended to let application developers "write once, run anywhere" (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation. • Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of computer architecture.
  • 3. Major features • Designed by : James Gosling and Sun Microsystems. The language was initially called Oak after an oak tree . • Developer : Oracle Corporation • Stable release : Java Standard Edition 8 Update 60 (1.8.0_60) / August 18, 2015 • Implementation language: C and C++ • OS : Cross-platform (multi-platform) • Filename extensions: .java , .class, .jar (Java Archive)
  • 4. WORA/ WORE • "Write once, run anywhere" (WORA), or sometimes write once, run everywhere (WORE) • Ideally, this means Java can be developed on any device, compiled into a standard bytecode and be expected to run on any device equipped with a Java virtual machine (JVM). • The installation of a JVM or Java interpreter on chips, devices or software packages has become an industry standard practice. • This means a programmer can develop code on a PC and can expect it to run on Java enabled cell phones, as well as on routers and mainframes equipped with Java, without any adjustments.
  • 5. What is Bytecode in Java ? • Bytecode is nothing but the intermediate representation of Java source code which is produced by the Java compiler by compiling that source code. • This byte code is an machine independent code. • It is not completely a compiled code but it is an intermediate code somewhere in the middle which is later interpreted and executed by JVM. • Bytecode is a machine code for JVM. • But the machine code is platform specific whereas bytecode is platform independent that is the main difference between them. • It is stored in .class file which is created after compiling the source code.
  • 6. What is Bytecode in Java ?
  • 7. Java applet • An applet is a special kind of Java program that is designed to be transmitted over the internet and automatically executed by a Java compatible web browser. • A Java applet is a small application which is written in Java and delivered to users in the form of bytecode. • The user launches the Java applet from a web page, and the applet is then executed within a Java Virtual Machine (JVM) in a process separate from the web browser itself.
  • 8. Java applet • A Java applet can appear in a frame of the web page, a new application window, Sun's AppletViewer, or a stand-alone tool for testing applets. Java applets were introduced in the first version of the Java language, which was released in 1995. • Java applets can be written in any programming language that compiles to Java bytecode. They are usually written in Java, but other languages such as Jython,JRuby,Pascal,Scala, or Eiffel (via SmartEiffel) may be used as well.
  • 9. Principles There were five primary goals in the creation of the Java language: • It must be "simple, object-oriented, and familiar". • It must be "robust and secure". • It must be "architecture-neutral and portable". • It must execute with "high performance". • It must be "interpreted, threaded, and dynamic".
  • 10. Java Buzzwords • Simple • Secure • Portable • Object oriented • Robust • Multithreaded • Architecture neutral • Interpreted • High performance • Distributed • Dynamic
  • 11. Java Buzzwords • Simple: •Easy to learn •Easy to write programs using Java •More expressive. •Most of the complex or confusing features in C++ are removed in Java like pointers etc..
  • 12. Java Buzzwords • Secure: •Java provides data security through encapsulation. •Also we can write applets in Java which provides security. •An applet is a small program which can be downloaded from one computer to another automatically. •There is no need to worry about applets accessing the system resources which may compromise security.
  • 13. Java Buzzwords • Portable: •Applications written using Java are portable in the sense that they can be executed on any kind of computer containing any CPU or any operating system. •When an application written in Java is compiled, it generates an intermediate code file called as “bytecode”. •Bytecode helps Java to achieve portability.
  • 14. Java Buzzwords • Object - Oriented: •Java follows object oriented model. •So, it supports all the features of object oriented model like: Encapsulation Inheritance Polymorphism Abstraction
  • 15. Java Buzzwords • Robust: •A program or an application is said to be robust(reliable) when it is able to give some response in any kind of context. •Some of those features are: 1. Type checking 2. Exception handling
  • 16. Java Buzzwords • Multithreaded: •Java supports multithreading which is not supported by C and C++. •A thread is a light weight process. •Multithreading increases CPU efficiency. •A program can be divided into several threads and each thread can be executed concurrently or in parallel with the other threads. •Real world example for multithreading is computer. While we are listening to music, at the same time we can write in a word document or play a game.
  • 17. Java Buzzwords • Architecture - Neutral: •Bytecode helps Java to achieve portability. •Bytecode can be executed on computers having any kind of operating system or any kind of CPU. •Since Java applications can run on any kind of CPU, Java is architecture – neutral.
  • 18. Java Buzzwords • Interpreted and High Performance: •In Java 1.0 version there is an interpreter for executing the bytecode. As interpreter is quite slow when compared to a compiler, java programs used to execute slowly. •After Java 1.0 version the interpreter was replaced with JIT(Just-In-Time) compiler. •This enhances the program performance means it executes rapidly.
  • 19. Java Buzzwords • Distributed: •Java supports distributed computation using Remote Method Invocation (RMI) concept. •The server and client(s) can communicate with one another and the computations can be divided among several computers which makes the programs to execute rapidly. •In distributed systems, resources are shared.
  • 20. Java Buzzwords • Dynamic: •The Java Virtual Machine(JVM) maintains a lot of runtime information about the program and the objects in the program. •Libraries are dynamically linked during runtime. •So, even if you make dynamic changes to pieces of code, the program is not effected.
  • 21. How Java achieved Platform Independency ?
  • 22. How Java achieved Platform Independency ? • Java achieved platform independency by moving machine language generation from compilation phase to execution phase by introducing bytecodes and JVM.
  • 23. How Java achieved Platform Independency ?
  • 24. How Java achieved Platform Independency ?
  • 25. What is the most important feature of Java? • Java is a platform independent language. This is most important feature of Java language. Platform independent language means programs written in Java will work on any computer that has Java installed on it, regardless of operating system. • Whereas Multithreading, AWT and Event Handling, Networking, Database Connection are important features of java.
  • 26. Types of Java Software • Java software is divided into two sub products • 1) jdk (Java Development Kit) • 2) jre (Java Run time Environment) • jdk has both "Compiler + JVM" • jre has only "JVM" • JVM is a sub-part of jre and jre is a sub-part of jdk. So in order to run any java application jre software is sufficient but if we need to compile and execute the java program we have to install jdk software.
  • 27. Types of Java Software This diagram shows the difference between jdk,jre and JVM.
  • 28. Thanks for your patience.